我有一大堆字段的模型。並非所有字段都是基於用戶選擇某種類型的表單而使用的。我有大約6種不同類型的表單,因此可以在其中的4個表單上使用一個字段。Rails 3對一組字段的驗證
有沒有一種方法來組合驗證基於一個元素ie?
case xxx
when "form1"
validates :field1, :presence => true
when "form2"
validates :field1, :presence => true
when "form3"
validates :fiel2, :presence => true
end
我會做客戶端驗證,但我顯然需要服務器端以確保他們已經提交了良好的數據。
任何建議如何做到這一點?
我正在使用Rails3與Mongoid 2.0
在此先感謝!
這不會工作,因爲foo是什麼被驗證。 foo不知道正在處理什麼樣的表單? – Lee 2011-05-18 12:02:03
對不起,我假設xxx會是你的模型類的一個方法。由於不是,請將該位更改爲%w {form1 form2} .include?(xxx)。也許真正的問題是xxx從哪裏來?我之前使用過class_attribute來允許將模型設置爲某種模式,但不確定這適用於您的情況。 – MacksMind 2011-05-18 15:57:29