動的にモデルで使っているテーブルを変更する方法
CakePHP 1.2.1を使ってます。
モデルのテーブルを簡単に変更する方法です。コントローラで下記のようにすれば変わります
$this->Model->setSource('tablename');
一時的にテーブルを変えたいだけの場合は、
$oldtable = $this->Post->useTable; $this->Post->setSource('posts2'); //利用テーブルを戻す $this->Post->setSource($oldtable);
こんな感じでできます。
それ以外の方法としては、モデルをnewで作って、そのときの第2引数にテーブル名を渡します。詳細は下記を参照。
http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=1802&forum=6