2015-12-16 2 views
1

Итак, я выбрал Sentinel как ACL для своей CMS. И я добираюсь до такой степени, что мне нужно назначать роли пользователям. Для этого мне нужно получить список всех доступных ролей. Но при запросе:Cartalyst Sentinel получить все роли

Role::all() 

от моей модели (которая расширяет EloquentRole) Я получаю только идентификаторы. Хотя идентификатор - хорошее начало, мне нужно больше. Предпочтительно:

Role::pluck('id', 'slug', 'name') 

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

Любые советы были бы высоко оценены!

ответ

0

Так что, кажется, я был немного красноречивым потоком. Кажется

Role::all() 
Role::pluck(...) 

Действительно не работает. Но регулярный:

Role::get() 

страницами. Whoopsie

0

Там в getRoles() функция

cartalyst/sentinel/src/Roles/RoleableInterface.php 

Вы можете использовать его с \Sentinel::getRoles() в Laravel.

Это может быть проще.

$roles = Sentinel::getRoleRepository()->get(); 
    foreach ($roles as $role) { 
     echo $role->name."<br/>"; 
    } 
0

Чтобы получить все доступные роли в качестве массива:

$roles = Sentinel::getRoleRepository()->all(); 

Или, если вам нужно красноречив (Role) объектов:

$roles = DB::table('roles')->get();