如何验证会员的电子邮件?

时间:2012-05-14 20:39:53

标签: ruby-on-rails ruby-on-rails-3 validation

我的validates_presence_of :email模型中有User。我的用户模型还有一个布尔member列,用于确定用户是成员还是普通用户的时间。

普通用户无需电子邮件即可注册。但是当他们注册成员帐户时,他们需要提供电子邮件。

问题是当用户注册为常规时,验证将触发:email为空。我该怎么做?

如果验证也命名了范围,那就太棒了。

2 个答案:

答案 0 :(得分:1)

如果我了解你,那应该就像

一样简单
validates_presence_of :email, :if => :member

答案 1 :(得分:1)

您的会员注册表单调用的操作可以显式设置user.member = true,然后JacobM的答案将起作用,即

validates_presence_of :email, :if => :member