2011-07-07 25 views
1

私はRoR 3を使って自分用の新しいウェブサイトを作成しています。私はShipClassesとShipEntriesのためのネストされたフォームを生成した船を作成していた場合Ruby on Rails 3 - ネストされたモデルフォーム

Ship model has many ShipClasses 
Ship model has many ShipEntries 
ShipEntry belongs to Ship 
ShipEntry belongs to ShipClass 

:私はそうのような3つのモデルを持っています。私が持っている問題は、ShipEntryを作成するときに新しいShipClassesが割り当てられているはずですが、Shipが作成された瞬間に、Shipに戻り、ShipClassesShipEntryに割り当てる必要がありますShipClassesはまだDBに作成されていません。新しく作成されたShipClassesを船の作成時にShipEntryに割り当てることは可能ですか?

誰かが私の言葉を得ることを願っています。あなたがこれを理解するのに問題があれば、私はもっと詳しく説明しようとします。

乾杯

EEF

+0

各 'ShipEntry'は1つの' ShipClass'にのみ属していますか? – Bohdan

+0

はいいいえ – RailsSon

答えて

2

あなたは、アクティブコールバックで何をしたいのかを達成することができます。

after_createのようなものを使用して、両方をリンクすることができます。

after_create :link_ship_entry_and_classes 

def link_ship_entry_and_classes 
    # whatever you need to do here 
end 

あなたはACについて知るためにそこにあるすべて読むことができます:http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html

は、この情報がお役に立てば幸いです!

+0

そうです。これは私の正確な考えでしたが、レールとその不思議を知っていると、これを達成するための素晴らしい方法があると思いました。 thaに応援するための乾杯! – RailsSon

関連する問題