我需要根据用户的登录详细信息将用户重定向到不同的url。
例如
-
如果1的用户id登录,则应该重定向他。"/home">
-
如果2的用户id登录,则应该重定向他。"/联系">
-
当他们被注销时,他们应该被重定向到索引页面。"/">
-
如果他们在注销时试图粘贴"/contact"url,则应将其重定向到"login"url
对于控制器中的登录用户
if(auth()->user()->id ==1){
return redirect("/home");
}elseif(auth()->user()->id ==2){
return redirect("/contact");
}else{
return redirect("/index");
}
如果他们在注销时试图粘贴"/contact"url,则应将其重定向到"login"url
Route::match(['get', 'post'], '/contact', 'Controller@method')->middleware('auth:user');
在不知道您使用的是哪个版本的Laravel的情况下,我所能建议的就是查看此处的验证文档以获取您的版本。
以下是laravel 7.x 的基本示例
app/Http/Controllers/Auth/LogiController.php
/**
* The user has been authenticated.
*
* @param IlluminateHttpRequest $request
* @param mixed $user
* @return mixed
*/
protected function authenticated(Request $request, $user)
{
// Add your logic here (switch statement)
return response([
//
]);
}
另请参阅此处的保护路线文件
app/Http/Middleware/Authenticate.php
/**
* Get the path the user should be redirected to.
*
* @param IlluminateHttpRequest $request
* @return string
*/
protected function redirectTo($request)
{
// Add your logic here (switch statement)
return route('login');
}