使用 if 选项 Mongoid 验证字段
Validation of field with if option Mongoid
我有一个带有验证的模型,我想做一个验证,只有当同一个表单中的另一个字段为真(它是一个布尔值)时才会被检查。我在使用此验证的语法时遇到问题。到目前为止我有
class Reportapproval
include Mongoid::Document
field :manager_requested, type: Mongoid::Boolean, default: false
field :disclosure_acceptance, type: Mongoid::Boolean, default: false
validates_acceptance_of :disclosure_acceptance, if: :manager_requested == true, :accept => true
end
只有在 manager_requested 字段设置为 true 时才检查此验证的正确语法是什么。
P.S。如果这是在输入时创建的,是否可以检查 manager_requested 字段。
尝试使用 lambda
或传递方法
validates_acceptance_of :disclosure_acceptance, if: lambda { manager_requested? }
或
validates_acceptance_of :disclosure_acceptance, if: :manager_requested?
我有一个带有验证的模型,我想做一个验证,只有当同一个表单中的另一个字段为真(它是一个布尔值)时才会被检查。我在使用此验证的语法时遇到问题。到目前为止我有
class Reportapproval
include Mongoid::Document
field :manager_requested, type: Mongoid::Boolean, default: false
field :disclosure_acceptance, type: Mongoid::Boolean, default: false
validates_acceptance_of :disclosure_acceptance, if: :manager_requested == true, :accept => true
end
只有在 manager_requested 字段设置为 true 时才检查此验证的正确语法是什么。
P.S。如果这是在输入时创建的,是否可以检查 manager_requested 字段。
尝试使用 lambda
或传递方法
validates_acceptance_of :disclosure_acceptance, if: lambda { manager_requested? }
或
validates_acceptance_of :disclosure_acceptance, if: :manager_requested?