Railsで複数モデルのインスタンスを作成する
- 623 :名無し募集中。。。:2006/10/19(木) 01:25:58 ID:???
>>622
殆どそれでいいと思う。
* トランザクション処理にした方がいい
* save!, create! で例外が発生する
あたりを加味して、エラー時処理はこんな感じでどうぞ。
def create
@header = Header.new(params[:header])
@line = Line.new(params[:line])
Header.transaction do
@header.save!
@line.header = @header
@line.save!
end
flash[:notice] = 'Order created.'
render :action=>"list"
rescue
render :action=>"new"
end
一つのコントローラのメソッド内で、複数のモデルのインスタンスを作成するときの例。