CakePHP1.X系のおはなし
あまりないケースなんだけど、DBの接続先が2つあった時にやったこと。
要はuseDbConfig変数を設定する。
1.database.phpに接続先を記述
var $default = array( 'driver' => 'mysql', 'persistent' => false , 'host' => 'XXX.XXX.XXX.XXX' , 'login' => 'ID', 'password' => 'PW' , 'database' => 'default_database' , 'prefix' => '', 'encoding' =>'utf8' , ); var $other= array ( 'driver' => 'mysql', 'persistent' => false , 'host' => 'XXX.XXX.XXX.XXX' , 'login' => 'ID' , 'password' => 'PW' , 'database' => 'other_database' , 'prefix' => '', 'encoding' =>'utf8' , );
2.$defaultに設定したDB以外に接続するモデルを以下のように記述
class Ohter extends AppModel { var $name = 'Other' ; var $useTable = 'others' ; var $useDbConfig = 'other' ; }
ちなみに、1モデルに複数の接続先からのデータを含める場合は、どちらかのモデルでApp::importを使えばいける。