2015-12-22 2 views
2

Я создал одно промежуточное программное обеспечение для проверки пользовательских ролей («superadmin», «admin» и «user»).Как я могу выполнить несколько роли на любом маршруте larvel?

И его рабочий штраф за одного говорят за «админ», если я использую одну роль.

Route::get('users',['middleware' => 'role:superadmin', function() { 
    return view('users_list'); 
}]); 

Но проблема заключается в предоставлении доступа к нескольким роли здесь. Я пробовал это, но не работал.

Route::get('users',['middleware' => 'role:superadmin,admin', function() { 
    return view('users_list'); 
}]); 

Хотя здесь я получаю роль «superadmin», а не admin. Но я думаю, что это неправильно.

Просьба предложить мне дать несколько ролей для любого маршрута.

Также я прошел через https://github.com/Zizaco/entrust, но нашел много открытых выпусков https://github.com/Zizaco/entrust/issues. Пожалуйста, предложите мне, если у вас есть идея лучше, чем начать с «Zizaco».

ответ

3

Вам нужно разделить роли с помощью |.

так:

'middleware' => ['role:admin|root'] 

Entrust documentation

+1

Вы избили меня к нему на несколько секунд, я добавлю его освещены в документации см https://github.com/Zizaco/поручить # middleware –

+0

Большое спасибо за быстрый и очень полезный ответ. –

+0

не работает для меня –

Смежные вопросы