私はRails 3.2.1で作業しており、CookingVenueとDiningVenueの2つのモデルにcooking_venuesとdining_venuesのMySQLテーブルが関連付けられています。私はhasをセットアップして、2つのモデルの間の多くの関係に属しますが、ここではjoinを表すMySQLテーブル名の名前は何ですか?has_and_belongs_to_many両方のモデルにアンダースコアの名前がある
cooking_venues_dining_venues
ですか?
Railsは料理と会場などの間でhabtmの関係を見つけようとしますか、それともRailsはこれをすべて実行するには本当に賢いですか?
ご連絡いただきありがとうございます。これまで私は今、エントリを結合テーブルに追加する方法に苦しんでいます。私は、既存のcooking_venue [id:3、desc: 'Kitchen A']と既存のdining_venue [id:5、desc: 'Nice Eatery'私は、これらの2をJoinテーブルでどのようにマッチさせるかについて精神的なブロックを持っているようです。ジョインテーブルを作成する方法はたくさんありますが、エントリ自体を作成する方法はあまりありません。おそらく私はそれ以外の理由で説明する必要はありません。 – nexar
私自身の2番目の質問に答えるために、これは私が思いついたものです。 CookingVenue_Controllerで私はできます:c = CookingVenue.find(3)d = DiningVenue.find(5)c.dining_venues << d。これにより、テーブルに正しいエントリが作成されます。私の質問は次のように変更されています:これは正しい "Rails"のやり方か、よりエレガントなものですか? – nexar
はい、<<演算子は正しい方法です。しかし、追加するときにオブジェクトを作成したいのであれば、c.dining_venues.create({:attribute_name => '属性値'})を使うことができます。 – xaph