2012-04-23 52 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 }