モデルファイルでテーブルの関係が適切に設定されていれば、ActiveRecordがデータの更新とjunctionテーブルへの挿入を処理すると思いました。
これはそうではありませんか?
たとえば、次のようなdvd.rbモデルがあります。
has_and_belongs_to_many :dvd_producer
ジャンクションテーブルはそれに応じて名前が付けられますdvd_producers_dvds
(私は知っています、ばかげた名前ですが、それはActiveRecordが期待するものです)。
dvd_producers
基本的に、次の方法で新しいプロデューサーをテーブルに挿入すると、次のようになります。
DvdProducer.create(producer: producer)
ActiveRecordが同等のデータ(producer_id、dvd_id)をjunctionテーブルに自動的に挿入することを期待します。
多分私はnew_producer.save
代わりにメソッドを使用する必要がありcreate
ますか?
それとも、これは単なる夢のようなものですか?