i have problem to redirect login different view. in my case when admin login redirect to dashboard admin, and when user login redirect to user page. i'm using laravel 8. this is my Login Controller
protected $redirectTo = '/home';
public function redirectTo()
{
$role = Auth::user()->role;
switch ($role) {
case 'admin':
return '/admin';
break;
case 'user':
return '/user';
break;
default:
return '/home';
break;
}
}
my middleware
{
if (!Auth::check()) // This isnt necessary, it should be part of your 'auth' middleware
return redirect('/home');
$user = Auth::user();
// echo $user;
if ($user->roles == $role)
return $next($request);
return redirect('/home');
}
my controller
Route::get('/', function () {
return view('auth.login');
});
my route
Auth::routes();
Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
Route::get('/user', [UserController::class, 'index'])->name('user')->middleware('role:user');
Route::get('/admin', [AdminController::class, 'index'])->name('admin')->middleware('role:admin');