Redirecionar usuário para a página de login quando a sessão expirar no Laravel
Estou tentando redirecionar um usuário de volta para a página de login, se a sessão deles expirou. Estou usando o Laravel 5.5. Eu editei meuRedirectIfAuthenticated
para incluir o seguinte código no diretóriohandle
função:
if (!Auth::check()) {
return redirect()->route('login', ['account' => 'demo']);
}
Quando faço isso, estou recebendo a seguinte mensagem de erro:
Parâmetros necessários ausentes para [Rota: login] [URI: /].
Minhaslogin
rota está dentro de um grupo de rotas de subdomínio, e é por isso que estou passando oaccount
parâmetro. Aqui está parte do meu código emweb.php
// Subdomain routing
Route::domain('{account}.ems.dev')->group(function () {
Route::get('/', 'LoginController@show')->name('login');
}
E aqui está o meuLoginController@show
código:
/*
* Show the login form
*/
public function show($account) {
// Validate this is a valid subdomain
$organization = Organization::where('subdomain', $account)->first();
if ($organization) {
return view('login');
} else {
return 'This account does not exist.';
}
}
Nada que eu tentei funciona. Continuo recebendo exatamente a mesma mensagem de erro, embora esteja transmitindo os parâmetros necessários.
Atualização # 1Captura de tela da página de erro:
Atualização # 2Depois de um pouco de escavação ao redor doOps! página de erro, eu vejo isso,protected function unauthenticated
é o que está causando o problema:
Como substituir essa função para adicionar o parâmetro ausente?