Чтобы использовать вторую базу данных с Sentinel, все модели должны иметь свойство «подключения» с нужным именем базы данных, или они просто будут использовать базу данных по умолчанию (потому что она построена с помощью Eloquent ORM).
В настоящее время Сентинел не предлагает такую возможность. Во всяком случае, я выяснил, как заставить это работать: в cartalyst / support / src / Traits / RepositoryTrait.php я отредактировал метод createModel:
public function createModel(array $data = [])
{
$class = '\\'.ltrim($this->model, '\\');
$class = new $class($data);
return $class;
}
Я добавил следующую строку кода перед строкой возврата:
$class->setConnection('second_database_name');
Теперь я хочу сделать это изменение постоянным, чтобы мне не пришлось снова менять код в следующем обновлении Sentinel, а также я хочу как обычно «установить композитор» Sentinel, поэтому мне нужно, чтобы изменения были в другой папке. ,
Какой лучший способ для меня это сделать?
Задача ещё не решена.
Других решений пока нет …