ActiveRecord验证失败时如何捕获用户提交的属性值?

时间:2013-08-21 03:14:10

标签: ruby-on-rails-3 activerecord

特定 ActiveRecord验证失败时,是否有一种优雅的方法来调用方法?我想象的是......

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

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

编辑其他细节以专注于这个问题。

1 个答案:

答案 0 :(得分: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