-1

当特定的ActiveRecord 验证失败时,是否有一种优雅的方式来调用方法?我正在设想类似...

验证 :email_address, :uniqueness => true, :when_fail => :call_method

当验证失败涉及我的控制器中的代码时,我有一种迂回的方式来调用该方法,但我正在寻找模型中更直接的东西。我在网上找不到任何相关的例子。

编辑了其他细节以关注这个问题。

4

1 回答 1

0

模型中的这个呢?

Model < ActiveRecord::Base
  after_validation do
    self.my_method unless self.errors.empty?
  end
end

对于特定的验证,您可以使用http://api.rubyonrails.org/classes/ActiveModel/Errors.html#method-i-5B-5D

于 2013-08-21T06:02:37.107 回答