これまでのところ、CodeIgniterがPHPActiveRecordORMツールとどのように連携するかを本当に楽しんでいます。
モデルで使用する接続を指定するにはどうすればよいですか?
私のconfig/database.phpファイルには2つの接続が設定されています:$db['default']
と$db['myOtherDb']
ありがとう
これまでのところ、CodeIgniterがPHPActiveRecordORMツールとどのように連携するかを本当に楽しんでいます。
モデルで使用する接続を指定するにはどうすればよいですか?
私のconfig/database.phpファイルには2つの接続が設定されています:$db['default']
と$db['myOtherDb']
ありがとう
コントローラ内に追加できます:
var $db_1, $db_2;
function __construct()
{
parent::__construct();
$db1_param = 'mysql://database_username:password@localhost/database_name?char_set=utf8&dbcollat=utf8_general_ci';
$db2_param = 'mysql://database_username:password@localhost/database_name?char_set=utf8&dbcollat=utf8_general_ci';
$this->db_1 = $this->load->database($db1_param, TRUE);
$this->db_2 = $this->load->database($db2_param, TRUE);
}
その場合、ハンドラーは次のようになります:$ this-> db_1、$ this-> db_2
load->database
関数で新しいデータベース名を指定します。
$otherdb = $this->load->database('myotherdb', TRUE);
アップデート:
ActiveRecordモデル内のIDEでオートコンプリートを呼び出し、使用可能なメソッド/プロパティを確認することで解決策を見つけました。プロパティの1つは、$connection
使用する接続に設定できるため、モデルでは次のようになります。
public static $connection = 'byOtherDb';