我使用以下方法验证模型中的字段:
validates :first_name, :presence => true, :if => :should_validate?
validates :last_name, :presence => true, :if => :should_validate?
...
模型中有许多字段需要验证,如果我指定的话,它看起来不太好:if =>每个方法。
是否可以在块中嵌入此验证方法而不是给出:if =>每个人的方法?
答案 0 :(得分:1)
您当然可以编写自己的自定义验证器,但如果您只是验证状态,则可能会有这个诀窍:
validates :first_name, :last_name, :presence => true, :if => :should_validate?
答案 1 :(得分:0)
我认为没有开箱即用的东西。如果需要,可以使用自定义验证器。
答案 2 :(得分:0)
您需要验证的条件是什么?如果您不需要它,那么您是否可以离开该线路?否则,您只能对某些操作进行验证,因此您无需为should_validate?进行评估,例如:
validates :first_name, :last_name, :presence => true, :only => [:create, :update]