2011-04-05 140 views
2

我正在開發Rails 3應用程序。爲什麼我的驗證不通過

我想驗證 「蛋糕」 模式的 「尺寸」 屬性輸入字段僅允許用戶輸入+ 1,-1,+ 10,-10和+ 25,-25,沒有別的。

我使用下面的驗證來驗證「大小」:

class Cake < ActiveRecord::Base 
    validates_format_of :size, :with => /^[-+]?(1|10|25)$/, :message=>'size not allowed.' 
    ... 

end 

(在我的數據庫「蛋糕」表中的「大小」屬性是「」類型)

在UI,我總是會得到驗證的失敗信息,即使我輸入1或10或25或+1或其他。爲什麼我的驗證沒有通過,即使價值是正確的?

回答

3

我不確定是否驗證Integer與正則表達式的工作。

你可以試試validates_inclusion_of :size, :in=>[-1,+1,-10,+10,-25,+25], :message=>'size not allowed.'

+0

它符合我的需求,謝謝:) – Mellon 2011-04-05 13:02:28

相關問題