【发布时间】:2025-12-29 13:15:06
【问题描述】:
我需要一些过滤器来将用户重定向到特定的控制面板,比如管理员会去他的管理面板,作家会去他的作家区域..所以我定义了一些过滤器 如果没有这些过滤器,用户不会自动注销,但是当使用这些过滤器时,用户会自动注销,甚至导航一页到第二页用户自动注销。
我的代码有什么问题吗?
代码如下:
路线
Route::filter('allow_only_admin', function() {
if (Session::get('role') !== "admin" ){
if (Session::get('role') == 'writer') {
return Redirect::route('windex');
}
} });
Route::filter('allow_only_writer', function()
{
if (Session::get('role') !== "writer" ){
if (Session::get('role') == 'admin') {
return Redirect::route('orders.all');
}
}
});
Route::group(['prefix' => 'writer','before'=>'allow_only_writer'], function()
{
Route::get('index', ['as' => 'windex', 'uses' => 'Writer@showIndex']);
});
【问题讨论】:
-
您是否将用户角色存储在数据库中?我的意思是用户角色可以通过用户模型访问
-
角色未在用户表中定义...我正在使用github.com/romanbican/roles 作为角色
标签: laravel laravel-5 laravel-filters