CakePHP hasAndBelongsToMany (HABTM)のデータを保存するときの注意
hasAndBelongsToManyでモデルを作ると、フォームデータからデータを更新したいとき、ちょっとおかしな挙動になります。
関連しているテーブルのデータを、何もデータの更新をしなくても同じデータの内容でUPDATEかINSERTしてしまいます。
UPDATEかINSERTかの違いは、モデルの$hasAndBelongsToManyの設定で
'unique' => false,
だとUPDATE、
'unique' => true,
だとINSERT INTO になるようです。
一応、下記のマニュアルサイトにHABTMのデータの保存について記載があります。
ちょっと使いづらいですね・・・。
Saving Related Model Data (HABTM)
http://book.cakephp.org/view/85/Saving-Related-Model-Data-HABTM
関連データはリフレッシュされてしまうみたいですね。
困っている人はいろいろいるようです。
http://groups.google.co.jp/group/cake-php/browse_thread/thread/e5e591195d38e2f3?fwc=1
仕方ないので、他の方法なんとかしましたが、いい、スマートな方法があれば教えてほしいです。