cakephp
別のデータソースからモデルをインスタンス化する
サーチ…
備考
CakePHPアプリケーションが複数のデータベースを照会する必要がある時が来ます。デフォルト以外のデータベースからモデルを要求する方法は、公式文書には記載されていません。
インスタンス化はApp :: usesを使用します
App::uses('YourModel', 'Model');
$model_1 = new YourModel(array('ds' => 'default'));
$model_2 = new YourModel(array('ds' => 'database2'));
モーダルのデータベース変更
複数のデータベースの場合、必要な数のデータベースを設定できるdatabase.phpファイルがあります。
オンザフライで特定のモデルのデータベースを「切り替え」たい場合は、 setDataSource()メソッドを使用します。
たとえば、2つのデータベースがある場合は、database.phpファイルで「default」と「sandbox」として定義できます。
次に、あなたのコードで:
$ this-> MyModal-> setDataSource( 'sandbox');
サンドボックスは設定の名前であり、実際のデータベース名はdatabase.phpファイルに1回だけ書き込まれます。
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow