有一個validate
符可以在聯想直接使用(見4.1.2.12在這個Rails Guide,也是一個validates_associated
(見3.2在那個Rails Guide)。 在哪裏都不同?驗證VS validates_associated
回答
他們既驗證了相關模型(一個或多個)。
不同的是,第一個是在關聯的選項(如belongs_to
,has_many
等)。例如,你在你的協會定義的「驗證的行爲」。
在經典的「作者有很多書籍」示例中,假設您在Book模型上啓用belongs_to :author, :validate => true
。每次您驗證書籍模型時,關聯的作者也必須有效。
另一個是可以添加到其他驗證的單獨的驗證規則。因此,在這種情況下,您可以將關聯對象的驗證與其他驗證規則一起啓用。
這可以反過來工作。作者:has_many :books ; validates_associated :books
。當您驗證作者對象時,所有書籍也都會被驗證。
要使用validates_associated沒有雙重驗證,你必須明確關閉:在關聯上驗證。我仍然想知道爲什麼validates_associated存在,如果它與默認值相同。有任何想法嗎? – 2011-05-13 15:53:20
我和@zardox有完全相同的問題,但我不確定這是否可以解決問題。你能否解釋兩種方法之間的實際區別,而不是它們聲明的位置。您是否首先暗示,這本書實際上是爲作者創建了一個驗證背壓,並且如果該書無效,則會迫使作者無效?這似乎沒有封裝。 – 2011-06-18 10:51:49
我還是很困惑。 has_many:books,:validate => true和has_many:books之間的區別是什麼? validates_associated:書? (你對差異的描述使得它們聽起來像是一樣的,這與解釋它們的不同之處相反)。 – 2011-12-29 19:19:07
- 1. activerecord驗證 - validates_associated
- 2. 理解validates_associated的validates_associated
- 3. Rails validates_associated on destroy
- 4. XML驗證vs Java驗證
- 5. Bean驗證VS JSF驗證
- 6. 反向validates_associated
- 7. validates_associated和HABTM
- 8. Rails 3:驗證:presence => true vs validates_presence_of
- 9. validates_associated not honoring:if
- 10. validates_associated in production
- 11. Rails是否允許validates_associated的條件驗證?
- 12. HTTP身份驗證VS OAuth VS HttpClient身份驗證
- 13. 對於棄用「validates_associated」在軌
- 14. Grails驗證錯誤 - Developer vs
- 15. 驗證模塊VS Nhibernate.Validator
- 16. xval vs MVC 3.0驗證
- 17. 成員驗證vs接口
- 18. Vulkan標準驗證層vs核心驗證層
- 19. PHPMailer身份驗證vs無身份驗證
- 20. 的Java Bean驗證VS XSD驗證了@ Pattern.List
- 21. JSF驗證服務器端vs自定義驗證器
- 22. dependent::destroy不能與validates_associated配合使用
- 23. 與MongoMapper驗證協會
- 24. 爲什麼`validates_associated`存在? railsguide的
- 25. IDataErrorInfo vs驗證規則與異常
- 26. Asp.Net MVC 2.0客戶端驗證VS 2010
- 27. jquery驗證需要vs不需要
- 28. Microsoft CRM 2011 IFD vs Windows驗證
- 29. 使用VS代碼驗證XML
- 30. 無法理解的驗證邏輯:=== VS ==
這裏是一個[更新的鏈接到Rails指南條目validates_associated](http://guides.rubyonrails.org/active_record_validations.html#validates-相關) – stereoscott 2013-07-28 23:47:38