在 Ruby on Rails 中,可以使用 build
方法将子记录添加到现有父级记录,而无需访问父级记录。以下是一个示例:
假设您有一个名为 Parent
的父模型和一个名为 Child
的子模型,它们之间的关系是一对多。在这种情况下,您可以在父模型中定义一个 has_many
关系,并在子模型中定义一个 belongs_to
关系。
class Parent< ApplicationRecord
has_many :children
end
class Child< ApplicationRecord
belongs_to :parent
end
现在,假设您有一个父记录的 ID,并且想要向其添加一个新的子记录,而无需访问父记录。您可以使用 build
方法创建一个新的子记录,并将其添加到父记录的子记录集合中。
parent_id = 1
new_child = Parent.find(parent_id).children.build(child_attributes)
new_child.save
在这个例子中,build
方法创建了一个新的子记录,并将其添加到父记录的子记录集合中。然后,使用 save
方法将新的子记录保存到数据库中。
请注意,这种方法不会访问父记录本身,因此可以避免不必要的数据库查询。
领取专属 10元无门槛券
手把手带您无忧上云