Вызов неопределенного метода Illuminate \ Database \ MySqlConnection :: connect () - PullRequest
0 голосов
/ 03 декабря 2018

Я работаю в методе динамического подключения нескольких баз данных, когда я запускаю свое приложение, появляется следующая ошибка

Вызов неопределенного метода Illuminate \ Database \ MySqlConnection :: connect ()

Я запустил composer dump-autoload и composer update, но ошибка продолжает появляться.

Вот код:

public function handle($request, Closure $next) {
    if (($request->session()->get('empresaId')) === null)
        return redirect()->route('inicio')->withErrors(['error' => __('Por favor inicie sesión en alguna empresa antes de intentar esta acción')]);

    $empresa = new empresa();
    DB::purge('empresa');
    //echo($empresa->hostname);
    Config::set('database.connections.empresa.host', $empresa->hostname);
    Config::set('database.connections.empresa.database', $empresa->database);
    Config::set('database.connections.empresa.username', $empresa->username);
    Config::set('database.connections.empresa.password', $empresa->password);

    DB::connect('empresa');

    return $next($request);
}

Кто-нибудь знает, почему я получил это сообщение?и как это можно исправить?

1 Ответ

0 голосов
/ 03 декабря 2018

Указанная ошибка объясняет проблему:

Вызов неопределенного метода Illuminate \ Database \ MySqlConnection :: connect ()

Это потому, что этот метод не работаетне существует в классе.Я предполагаю, что вы пытаетесь вызвать метод connection().

Попробуйте изменить это:

 DB::connect('empresa');

на это:

 DB::connection('empresa');
...