0

new假设我在oredit表单中有两个字段:

<%= 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
4

1 回答 1

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
于 2012-04-05T21:54:21.037 回答