2009-09-08 37 views
50

,然後我可以做Rails的模型驗證創建,如果我想有隻驗證上創建只更新

validates_presence_of :password, :on => :create 

但我怎麼說上創建和更新?我試過這個,但它沒有工作:

validates_presence_of :password, :on => [ :create, :update ] 

我必須定義驗證兩次嗎?

+4

可能是一個修補程序...除了如何:創建和:更新不同於默認值:保存? (不會:保存是兩個嗎?) – 2009-09-08 12:44:50

+1

是的,我只是發現:保存是兩種,thx – 2009-09-08 22:42:45

回答

66

默認情況下,驗證針對創建和更新都運行。所以它應該只是:

validates_presence_of :password 

:關鍵只是允許你選擇其中之一。

+20

新的約定實際上是使用:'validates:password,presence:true' – 2012-08-08 11:20:01

11

只寫:

validates_presence_of :password 

不需要......

on => :create 
0

當你需要禁用一些特定的操作,如刪除驗證您可以使用此。

相關問題