CI を介して別の解決策を見つけ、database.php ファイルに 2 つのデータベース接続を作成し、mysql サーバーをデフォルトのデータベース接続として保存し、他の接続を書き込み専用サーバーに保存します。
この基本モデルの拡張を使用できます
https://github.com/jamierumbelow/codeigniter-base-model
このモデルを使用してモデルを拡張する必要があり、これを使用してモデルを拡張する必要があります。挿入、更新、削除、取得クエリの前後のコールバックの機能があります。カスタム メソッドまたはコールバック change_db_group を 1 つ追加するだけです。
//this method in MY_Model
function change_db_group{
$this->_database = $this->load->database('writedb', TRUE)
}
あなたのサンプルモデルはありません
class Example_Model extends MY_Model{
protected $_table = 'example_table';
protected $before_create = array('change_db_group');
protected $before_update = array('change_db_group');
protected $before_delete = array('change_db_group');
}
挿入、更新、または削除クエリを実行する前に、データベース接続が変更されます