php – Laravel 4 Auth重定向总是登录页面? /登录
发布时间:2020-12-14 19:41:12 所属栏目:大数据 来源:网络整理
导读:我正在使用laravel用于我的web应用程序和routes.php我有: // admin routesRoute::group(array('before' = 'auth'),function(){Route::controller('admin','UsersController');}); 我想保护并检查此人是否已登录,但此代码始终重定向到“/ login”我希望它重
我正在使用laravel用于我的web应用程序和routes.php我有:
// admin routes Route::group(array('before' => 'auth'),function() { Route::controller('admin','UsersController'); }); 我想保护并检查此人是否已登录,但此代码始终重定向到“/ login”我希望它重定向到“admin / login”,这可以完成吗?
filters.php文件中有一个默认的auth过滤器,它应该是这样的:
Route::filter('auth',function($route,$request) { if (Auth::guest()) return Redirect::guest('login'); // /login url }); 此过滤器(如上所述)将检查用户是否未登录,然后将发生重定向并且用户将被发送到/ login url,否则将不会发生任何事情,用户将被发送到所请求的页面. 此外,默认情况下,以下过滤器可用,此过滤器仅检查用户是否已登录,然后默认情况下将重定向到/(主页): Route::filter('guest',function($route) { if (Auth::check()) return Redirect::to('/'); // you may change it to /admin or so }); 此(guest)过滤器与/ login一起使用,如下所示,因此如果登录用户打算登录,则默认情况下用户将被重定向到主页: Route::get('login',array('before' => 'guest','uses' => 'UsersController@getLogin')); 现在,在routes.php文件中,您声明了以下路由: Route::group(array('before' => 'auth'),function() { Route::controller('admin','UsersController'); }); 如果一切都很好,那么这个设置应该有效.如果注销用户尝试访问管理员,则用户将被发送到登录状态,默认情况下这些用户可以使用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |