假设我有new
或edit
形式的两个字段:
<%= f.text_field :email %>
<%= f.text_field :parent_email %>
在我的模型中,我如何确认parent_email
与email
不同? exclusion
选项似乎可能有效,但我无法弄清楚如何在模型中访问email
字段的值。我需要在控制器中实现这个吗?
validates :parent_email, exclusion: self.email # doesn't work, nor does :email
答案 0 :(得分:1)
以下内容应该有效(但我想有更酷的解决方案):
class User
validate :email_differs_from_parent_email
private
def email_differs_from_parent_email
if email == parent_email
errors.add(:parent_email, "parent_email must differ from email")
end
end
end