假设我有一个名为 Book 的ActiveRecord模型,该模型与模型页面具有has_many关联。
class Book < ActiveRecord::Base
has_many :pages
end
我想知道是否存在已建立的方法,以确保在没有至少一个与之关联的有效Page对象的情况下无法将Book对象保存到数据库。我的目标不是测试关联的存在,而是验证父对象确实具有有效的子对象。这有意义吗?这实际上是测试关联的情况吗?我熟悉“validates_associated”方法,但如果尚未分配关联,则此验证不会失败,但如何确保关联另一侧有有效对象?
答案 0 :(得分:2)
来自validates_associated
的Rails 2.3.2文档:
注意:如果,此验证不会失败 该协会尚未分配。 如果你想确保 协会既存在又存在 保证有效,你也需要 使用validates_presence_of。