0

我正在将 Rails 1 应用程序升级到 2.3,并且遇到如下代码块问题:

@foo = Foo.new(...)

params[:baz].each do |b|
  @foo.bars.create(...)
end

...

@foo.save

这在 Rails 1 中运行良好。升级后,调用此create方法会产生:

ActiveRecord::RecordNotSaved in BazController#create :
You cannot call create unless the parent is saved

createRails 1 和 2 之间的方法是如何变化的,现在处理这个问题的正确方法是什么?

4

1 回答 1

2

使用@foo.bars.build代替create

于 2011-02-03T23:38:05.280 回答