I love iPhone, Android, Cocos2d-x
CakePHP アソシエーションのまとめ(2)
アソシエーションのまとめ(1) で書いた
< ?php class User extends AppModel { var $name = 'User'; var $hasOne = array('Profile' => array('className' => 'Profile', 'conditions' => '', 'order' => '', 'dependent' => true, 'foreignKey' => 'user_id' ) ); } ?>
この部分の補足です。
それぞれの意味するところは
var $hasOne = array('関連先のモデル名'=> array('className' => '関連先のモデルのクラス名', 'conditions' => '関連を定義するSQL条件の一部', 'order' => '関連先のデータの並び順', 'dependent' => '関連先データの同時削除', 'foreignKey' => '関連先テーブル側の外部キー' ) );
conditions は条件を付けて関連付けるモデルのデータを制限するときに指定する。
dependent は関連元のデータが削除されたときに、一緒に関連先のデータも削除するかどうか。
関連先のモデルで関連元のモデルの主キーを定義しているカラム名です。
dependent などはかなり便利に使えそうですね。
アソシエーションのまとめ(1) に書いたように、 foreignKey は CakePHP の命名規則に従っていれば省略可能です。
関連する投稿
コメントをどうぞ
Additional comments powered by BackType