Я вижу этот ответ ( Множественное соединение с базой данных с использованием Illuminate / Database Eloquent ORM в CodeIgniter 3 , что было бы целесообразно, если бы у меня был совершенно другой набор данных в двух разных базах данных. Однако я работаюс моей базой данных «по умолчанию» и базой данных «реплики» (только для чтения).
Как заставить мое приложение использовать только таблицу applications
для реплики для all()
и базу данных по умолчанию для create()
, delete()
и т. Д.
Я хотел бы сделать что-то подобное в моем контроллере / что угодно:
$application = (new Application)
->database($this->replicaDbConnection) // an example
->findOrFail($applicationId);
А затем для другого что-то вроде:
$application = (new Application)
->database($this->defaultDbConnection);
$application->title = $title;
// ....etc
$application->save();
Модель Application
достаточно велика, и было бы нецелесообразно поддерживать две модели, одинаковые во всех отношениях только для разных атрибутов подключения.
Есть ли решение для этого?