【发布时间】:2015-12-17 17:15:24
【问题描述】:
我已经在我的应用程序中实现了中间件角色和权限控制,但我不明白为什么它只允许我定义一个“/”路由。即使我覆盖了 AuthController redirectTo 变量,第二个仍然指向“/home”。
我的路线:
Route::group(['middleware' => 'role:user'], function()
{
Route::get('/', 'ScoresController@user');
});
Route::group(['middleware' => 'role:admin'], function()
{
Route::get('/', 'PagesController@home');
});
在任何情况下,在身份验证后,用户角色重定向到“/home”的用户。
【问题讨论】:
-
中间件不是 if 语句。一条路由只能转到一个控制器和操作,您的中间件只会验证用户是否有权访问该路由。在您的情况下,最后一条路线将覆盖上一条路线。
-
@SimonSvensson 感谢您的解释。
标签: laravel authentication middleware