模块的ActiveRecord验证

时间:2013-02-13 20:35:55

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-3.2

我在每个模型中都有验证。我还在我的lib文件夹中定义了一个模块,其中包含更新我的模型的方法。如何获得我在模型中定义的验证,以便为我的模块中的方法工作。

1 个答案:

答案 0 :(得分:0)

你可以这样做:

class MyValidator < ActiveModel::Validator
  def validate(record)
    unless MYLIB::isthisgood(record.name)
      record.errors[:base] << "Name is No Good"
    end
  end
end

class MyModel < ActiveRecord::Base
  validates_with MyValidator
end