Предположим, у меня есть 2 фильтра
1) Админ 2) Суперадмин
Фильтры:
Route::filter('Admin', function($route, $request)
{
if ( ! Auth::user()->Admin()) {
return Response::json(array('flash' => 'You are not authorized.'), 401);
}
});
Route::filter('SuperAdmin', function($route, $request)
{
if ( ! Auth::user()->SuperAdmin()) {
return Response::json(array('flash' => 'You are not authorized.'), 401);
}
});
Маршруты:
Route::group(array('before' => array('auth|Admin')), function()
{
Route::get('/report/{id}','ReportCntrl@getreport');
Route::get('/create1','ReportCntrl@create1');
}
Route::group(array('before' => array('auth|SuperAdmin')), function()
{
Route::get('/report/{id}','ReportCntrl@getreport');
Route::get('/create2','ReportCntrl@create2');
Route::get('/create3','ReportCntrl@create3');
}
поэтому проблема в том, что когда я вхожу с superadmin
, он говорит, что несанкционированный доступ
потому что я думаю, что он передает мой запрос обоим фильтрам, и один одобряет его, а второй не одобряет.
Есть ли способ, который я могу использовать для доступа к одному и тому же URL-адресу из двух групп маршрутов в Laravel.
Admin
в самом фильтреSuperAdmin
- person Saqueib   schedule 12.12.2014if is_admin or is_superadmin return true;
- person Kyslik   schedule 12.12.2014superadmin
есть некоторые права, которые не должны быть доступны для администратора. - person AngularDev   schedule 12.12.2014