调用未定义的方法Illuminate \ Database \ MySqlConnection :: connect()

I'm working in a Connect multiple databases dynamically method, when I run my app the follow error apears

Call to undefined method Illuminate\Database\MySqlConnection::connect()

I ran composer dump-autoload and composer update but the error keeps coming.

Here is the code:

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);
}

anyone know why I got that message? and how can fix it?

The reported error is explaining the issue:

Call to undefined method Illuminate\Database\MySqlConnection::connect()

This is because this method doens't exist in the class. The method that I'm guessing you try to call is connection().

Try changing this:

 DB::connect('empresa');

to this:

 DB::connection('empresa');