現在のユーザーに基づいて別のデータベースを使用する必要があるこのプロジェクトがあります。Datamapper 拡張機能で codeigniter を使用しています。
次のようなデータマッパーモデルで使用できるコントローラーに別の接続グループを設定するのが理想的です。
var $db_params = 'user_specific';
ただし、構成パラメーターとは異なり、データベースパラメーターはコントローラー内からアクセスできないようです。この質問への回答で、新しい datamapper オブジェクトを作成するときに変数 ($db) を渡す必要がある方法を見つけました。
$customers = new customer(NULL, $db);
// The NULL I would need becuase the constructor expects an ID or nothing by default
ただし、ほとんどのモデルは動的設定を使用するため、どこにでも $db 変数を追加するのは大変な作業です...他に解決策はありますか?
$customer = new customer();
// And in my model use the dynamic 'config' settings like
var $db_params = 'user_specific';
それは大きな助けになるでしょう。前もって感謝します。