这看起来像一个简单的问题,但我似乎无法找到一个写自定义验证器的答案。我有这个验证器Rails 3验证基于操作的规则
validates :password, :presence => true, :confirmation => true, :length => { :minimum => 5}
有更多的规则应用,如一些正则表达式的复杂性,但这给出了要点。
问题是我只想要在创建时应用状态,其他所有事情都需要在创建和更新时应用。因为用户在更新信息时可能没有更改密码。
我试图分裂规则
validates :password, :presence => true, :on => :create
validates :password, # The rest of the rules
这导致了更新被忽略的所有规则。是否有一种简单的方法可以只应用一个规则来创建,其余的都应用于其他方面?
好点。我可能需要更深入地研究它。如果输入的密码为空,则某些要求可能会失败。 – 2011-05-05 15:01:13