2012-04-23 53 views
4

我有一个模型需要一个电子邮件地址,但我不想要求它创建实例。我试过如下:Rails验证器在线状态和格式之间的差异

validates :email, :presence => false, :format => { :with => email_regex } 

但这种失败我的测试套件,该格式的正则表达式显然使得所需的电子邮件属性的存在。

我认为这可能是一个before_save方法:是否有可能拒绝保存对象在before_save方法?这样做有没有更好的“Rails方式”?

回答

5

可以使用:allow_blank(或:allow_nil):

validates :email, :allow_blank => true, :format => { :with => email_regex }