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
create
Rails 1 と 2 の間でメソッドはどのように変更されましたか? また、これを適切に処理するにはどうすればよいでしょうか?