CakePHP

CakePHP データベースのテーブル名を途中で変更

CakePHPではデータベースの接続先テーブルを変更できますが
実行中に変更したくなる場合があると思います。

コントローラーの実行途中で接続先のテーブルを変更する、
そんな開発なのでメモとして(笑)

接続先のテーブルを変更する可能性はいろいろなパターンがあります。
例えば、ログインユーザーごとのテーブルが存在する場合や
CakePHPの「plugin」機能を利用をした場合など、仕様によってさまざまです。
※「plugin」については、いつか説明ができればと(汗)

さて本題ですが接続先のテーブルを変更する場合は次のように記述します。

$this->モデル名->setSource('接続先テーブル名');

記述はコントローラー内で行いますので注意してください。

これで任意のタイミングでテーブルの接続を動的に変更できます。
ここまで考えられているCakePHPは便利だなと、つい思ってしまいます(笑)

コメント