2016-12-03 91 views
4

我有3种类型的用户作为客户,零售商和管理员。在客户端,他们可以在没有初始登录的情况下访问服务。但是,有些路由需要登录,例如购物车页面需要客户登录。我有一个数据库char字段来查找用户表中的用户类型。我成功登录后重定向到不同用户类型的索引页面。但假设尚未登录到系统的客户访问服务,突然他点击需要授权的路由,然后它将重定向到用户可以登录的登录页面。但是在登录后,他们也被重定向回到索引页面而不是请求登录的页面。我如何将其重定向回请求的页面。以下是代码块。谢谢重定向回laravel中的请求页面5.3

Web.php(只是其中的一部分,这里显示的其它客户的路由是不是AUTH中间件内)

Route::group(['middleware' => 'auth'], function() { 

Route::get('/cart','[email protected]'); 
Route::get('/cart/changeStatus','[email protected]'); 

}); 

登录控制器认证的功能

protected function authenticated($request, $user) 
{ 
    if($user->type === 'c') { 
     return redirect('/home'); 
    } 
    else if($user->type === 'a') { 
     return redirect('/admin/home'); 
    } 
    else if($user->type === 'r') { 
     return redirect('/retailer/home'); 
    } 

} 

回答

4

Laravel不断为你和你只需要:

return redirect()->intended('home'); 

home是一个备用路线,这样你就可以

return redirect()->intended('/admin/home'); 
+0

非常感谢你:) – hEShaN

0

您可以使用回重定向: :背部();