CakePHPのbindModelとunbindModel

Kazuya Takato

Kazuya Takato


CakePHPModel

使unbindModel使

ModelbindModel

unbindModelbindModel使paginate使
$this->Model->unbindModel(array('hasOne'=>array('Model_2')));
$this->Model->bindModel(array('hasOne'=>array('Model_3')));

$result = $this->paginate('Model');

paginatecountSQLSQL

countSQLunbindModelbindModel2SQL

2unbindModelbindModel
// 2回Modelに設定してやる
$this->Model->unbindModel(array('hasOne'=>array('Model_2')));
$this->Model->bindModel(array('hasOne'=>array('Model_3')));
$this->Model->unbindModel(array('hasOne'=>array('Model_2')));
$this->Model->bindModel(array('hasOne'=>array('Model_3')));

$result = $this->paginate('Model');

model.php
function bindModel($params, $reset = true)

function unbindModel($params, $reset = true)

$reset

If $reset is false, association will not be reset to the originals defined in the model

$resetfalse
$this->Model->unbindModel(array('hasOne'=>array('Model_2')),false);
$this->Model->bindModel(array('hasOne'=>array('Model_3')),false);

$result = $this->paginate('Model');

$resetfalse



bindModel使

LIGWeb
Webサイト制作の実績・料金を見る

この記事のシェア数

Kazuya Takato
Kazuya Takato 取締役 COO 兼 CTO / DX事業本部長 / 高遠 和也

1983年生まれ。SIerとしてのキャリアをスタートし、JavaやC#を中心に多岐にわたる開発プロジェクトにエンジニアとして参加。その経験を活かし、LIGを創業。バックエンドおよびフロントエンドエンジニアとしての深い知識と経験をもとに、多様なプロジェクトに従事。2023年7月には社長室室長に就任にし、社内の体制やルールの最適化、AI技術の推進など、経営戦略の一翼を担っています。

このメンバーの記事をもっと読む
デザイン力×グローバルな開発体制でDXをトータル支援
お問い合わせ 会社概要DL