2011-06-28 14 views
0

私はclients,client_categoriesおよびclients_category_mergeの3つのモデルを持っています。 clients_idclient_categories_idclients_category_mergeテーブルに保存したい場合は、単一のクライアントに複数のクライアントカテゴリを設定することができます。Ruby on Railsで1つのモデルしかないときに複数のテーブルにレコードを追加するには?

フォームを送信するときに1つのモデル(clients)しかない場合、2つのテーブル(clientsclients_category_merge)にレコードを追加するにはどうすればよいですか?

これを行うには良い方法があると確信しています。しかし、私はRailsの初心者です。

答えて

0

has_many :throughの関連付けによって、適切なレコードが追加されます。

class Client < ActiveRecord::Base 
    has_many :client_categories_merges 
    has_many :client_categories, :through => :clients_categories_merges 
end 

class ClientCategories < ActiveRecord::Base 
    has_many :client_categories_merges 
    has_many :clients, :through => :clients_categories_merges 
end 

class ClientCategoryMerges < ActiveRecord::Base 
    belongs_to :client_category 
    belongs_to :client 
end 

Check out this guide

編集:そして、対応するフォーム

+0

おかげでルークのためthis one!私はあなたの例とガイドを見て、とても良いです!しかしもう一つの質問:顧客フォームにカテゴリレコードをどのように指定すればよいですか?すべてのカテゴリをループして、チェックボックスを設定し、Railsが私のために残りをすることを期待できますか? :) –

+0

あなたの質問に答える別のリンクが追加されました。 – Luke

+0

素晴らしい!最後のリンクをありがとう!完全に私の質問に答えた! :D –

関連する問題