Rails 中間テーブル

Railsでつまずいた。

 

プライマリーキーのない中間テーブルを作成して、そのテーブルは2つのテーブルを参照している。

 

そのテーブルに対して、UPDATEをかけようとしようとするが、プライマリーキーがないせいかINSERTになってしまう。

 

editアクションをするたびに新規作成されるので困った。

 

先輩に聞いたところ、先輩はUPDATEではなく、DELETEしてからINSERTをするようにアドバイスされた。きっと、プライマリーキーを他に設定する方法がActiverecordの中にあるのだが、時間がないためこの方法を仕方なくとってみる。