我有几个模型验证,但在一个特定的我要验证但不会在错误时返回它的消息。
我试过了:
validates :birth_text, presence: true, message: false
或者
validates :birth_text, presence: true, message: ''
错误:
in `rescue in block in validates': Unknown validator: 'MessageValidator' (ArgumentError)
我想这样做,因为我将在另一个字段上验证并且它返回重复的错误消息。
答案 0 :(得分:2)
如果我收到您的问题,那么您需要定义验证器
class MessageValidator < ActiveModel::Validator
def validate(record)
if some_complex_logic
record.errors[:base] = "This record is invalid" #if you want to send message
end
end
private
def some_complex_logic
# ...
end
end
和模型
validates_with MessageValidator