eyecatch_cakephp_20160912_cmp

CakePHP

CakePHPのアソシエーションを動的に追加・削除する方法

2014/05/28

CakePHPのFind時などにアソシエーションを動的に追加・削除する方法。
忘備録としてポストします。

CakePHPのバージョンはは1.3です。

アソシエーションを動的に追加・削除

追加例

Product モデルに Place(産地) を hasOne で追加する場合

一時的にアソシエーションを追加する場合は bindModel() の第二引数に true を、恒久的な追加には、false を指定します。

削除例

Product モデルに設定している hasOne の Place(産地) を解除する場合。

追加と同様、一時的にアソシエーションを解除する場合は、unbindModel() の第二引数に true を、恒久的な解除には、false を指定します。

pagination を使用している場合は、unbindModel() の第2引数は false をセットするとうまくいくようです。

-CakePHP
-,