对于电子邮件属性,我有两个验证器助手,如下所示:
validates :email,
presence: true,
format: { with: /some_regex/, message: "Bad email error message"}
有没有办法设置它(不使用自定义验证器方法)所以如果presence: true
失败,它将不会显示format
消息?
我不想在字段为空白时显示格式消息...它没有提供良好的用户体验"当然它是一种糟糕的格式......那里什么都没有!"
答案 0 :(得分:1)
使用unless
选项并移除presence
选项。
validates :email,
format: { with: /some_regex/, message: "Bad email error message"},
unless: "email.nil?"
这样,除非email
为nil
:if
和:unless
或者,您可以使用allow_blank
,这将确保仅在字段不为空时才会进行验证。
validates :email,
format: { with: /some_regex/, message: "Bad email error message"},
allow_blank: true
两者都做同样的事情。但是,第一种选择更灵活。