Rails 2 создает метод и сохраняет родителя - PullRequest
0 голосов
/ 04 февраля 2011

Я обновляю приложение 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, и как правильно теперь справиться с этим?

1 Ответ

2 голосов
/ 04 февраля 2011

Используйте @foo.bars.build вместо create

...