2014-01-16 102 views
0

我有用戶模型,其中包括7個領域。對於所有這些字段驗證寫。我有兩種形式,我顯示字段取決於條件。在一種形式中,我有名字密碼和城市和其他形式我有角色,電話和名稱。有沒有辦法在rails中保持驗證字段可選?

當我嘗試提交第一個表單時,我得到了錯誤,表示電話和角色字段是必需的,導致表單失敗。

有沒有什麼辦法可以提交這兩種形式而不會得到驗證錯誤?

注:我希望我的邏輯僅在模型中..請幫助我解決這個問題。

回答

1

你可以使用條件的驗證來實現你想要的:

在這裏看到:http://guides.rubyonrails.org/active_record_validations.html#conditional-validation

然而,這可以迅速得到難以管理。根據你打開的條件,它可能是一個更清潔的設計,使用一個'表單對象',這將給你更多的控制,讓你做驗證沒有凌亂的條件邏輯。本博客文章更詳細的

見節#3: http://blog.codeclimate.com/blog/2012/10/17/7-ways-to-decompose-fat-activerecord-models/

使用這個模式,你將在控制器檢查您的病情,然後確定要發送到的圖,該表單對象。

相關問題