【发布时间】:2014-06-27 01:58:25
【问题描述】:
我有以下几点:
class User < ActiveRecord::Base
has_one :blog
end
class Blog < ActiveRecord::Base
belongs_to :user
end
如果我这样做:
@user = User.new
@blog = Blog.new
@blog.title = 'hi'
@user.blog = @blog
@user.save
为什么/如何在我不保存@blog 对象的情况下将@blog 对象保存到数据库?
例如,如果我从上面的例子继续:
@user.reload
@user.blog.title
#=> 'hi'
它神奇地将@blog 保存到数据库中!
奇怪的是,如果我的@blog 有其他关联,它似乎并没有将它们保存到数据库中。
这背后的一般行为/逻辑是什么?我的@blog 有其他关联,我希望能够简单地调用@user.save 并让它保存所有 关联。我该怎么做?
【问题讨论】:
标签: ruby-on-rails activerecord activemodel