有没有办法找到模型的所有定义的验证。例如:
class Temp < ActiveRecord::Base
validate_uniqueness_of :name
validate :some_method
def some_method
...
end
end
当我尝试:
Temp.validators
它只能找到唯一性验证,但不能找到另一个。
答案 0 :(得分:3)
我用以下方法解决了这个问题:
Model._validate_callbacks.to_a.reject { |validation| validation.filter.to_s.starts_with?('validate_associated_records') }
'reject'用于忽略某些默认验证。