通过has_one创建Activerecord关系

时间:2012-06-22 12:27:29

标签: ruby-on-rails activerecord has-one

如果你有一个has_many :bubbles(和泡泡belongs_to :walrus的模型海象,你可以创建一个与海象相关的新泡泡,如下所示:

chuckles = Walrus.create
chuckles.bubbles.create

但是如果Walrus has_one :bubble怎么办? chuckles.bubble.create是不行的(因为它是nil)。如果不在Bubble.create

中传入Walrus,我该如何做同等效果

1 个答案:

答案 0 :(得分:4)

对于has_many

chuckles.bubbles.build

对于has_one

chuckles.build_bubble

在上面的示例中,我认为您应该使用构建。它为bubble对象添加了chuckles id。此外,当保存轻笑时,气泡也会自动保存