Вы делаете это неправильно.Вы не должны помещать такой код в конструктор контроллера, потому что он, вероятно, не будет работать.
Вместо этого в вашем контроллере вы должны определить пользовательский метод redirectTo
:
protected function redirectTo()
{
if(Auth::check() && Auth::user()->role->id == 1) {
return route('admin.dashboard');
}
return $this->redirectTo=route('user.dashboard');
}
Это должно работать, потому чтов признаке Illuminate/Foundation/Auth/RedirectsUsers.php
указан метод:
public function redirectPath()
{
if (method_exists($this, 'redirectTo')) {
return $this->redirectTo();
}
return property_exists($this, 'redirectTo') ? $this->redirectTo : '/home';
}
, который используется позже в LoginController по умолчанию при успешной регистрации пользователя.