Php 来宾学生和管理员身份验证
我试图用Laravel4管理用户角色,但我不清楚它是如何工作的,所以我需要一些解释。 这就是我想做的: 如果用户是来宾(未登录),则重定向到路由Php 来宾学生和管理员身份验证,php,laravel,laravel-4,laravel-routing,Php,Laravel,Laravel 4,Laravel Routing,我试图用Laravel4管理用户角色,但我不清楚它是如何工作的,所以我需要一些解释。 这就是我想做的: 如果用户是来宾(未登录),则重定向到路由/ 如果记录的用户角色等于student,则重定向到student/books 如果记录的用户角色等于admin,请重新定位到admin/index 我想要的是使用slug和用户角色进行过滤。user表包含以下列: first_name | email | password |role 顺便说一句,我是拉威尔的新手,所以我需要一个更好的解释 我假设我需
/
如果记录的用户角色等于student
,则重定向到student/books
如果记录的用户角色等于admin
,请重新定位到admin/index
我想要的是使用slug和用户角色进行过滤。user
表包含以下列:
first_name | email | password |role
顺便说一句,我是拉威尔的新手,所以我需要一个更好的解释
我假设我需要的步骤是:
- 在
filters.php
- 在
routes.php中创建路由组
Auth::user()->role
filters.php
Route::filter('isAdmin', function()
{
if (Auth::guest() || Auth::user()->role !== "admin")
{
return Redirect::to('/');
}
elseif(Auth::user()->role == "admin"){
}
});
Route::filter('isStudent', function()
{
if (Auth::guest() || Auth::user()->role !== "student")
{
return Redirect::route('adm_index');
} }
elseif(Auth::user()->role == "student"){
return Redirect::route('std_books');
}
});
Route::group(array('before' => 'isStudent'), function()
{
Route::get('student/books',array('as'=>'std_books','uses'=>'BookController@method_name'));
});
Route::group(array('before' => 'isAdmin'), function()
{
Route::get('admin/index',array('as'=>'adm_index','uses'=>'AdminController@method_name'));
});
routes.php
Route::filter('isAdmin', function()
{
if (Auth::guest() || Auth::user()->role !== "admin")
{
return Redirect::to('/');
}
elseif(Auth::user()->role == "admin"){
}
});
Route::filter('isStudent', function()
{
if (Auth::guest() || Auth::user()->role !== "student")
{
return Redirect::route('adm_index');
} }
elseif(Auth::user()->role == "student"){
return Redirect::route('std_books');
}
});
Route::group(array('before' => 'isStudent'), function()
{
Route::get('student/books',array('as'=>'std_books','uses'=>'BookController@method_name'));
});
Route::group(array('before' => 'isAdmin'), function()
{
Route::get('admin/index',array('as'=>'adm_index','uses'=>'AdminController@method_name'));
});
我建议对用户角色和权限使用Zizaco的委托包:它是使用最多的用户/角色包之一,学习它比自己创建系统更容易。