Cartalyst Sentinel получить все роли

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

Role::all()

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

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

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

Любые советы будут с благодарностью!

1

Решение

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

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

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

Role::get()

делает. Whoopsie

0

Другие решения

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

cartalyst/sentinel/src/Roles/RoleableInterface.php

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

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

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

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

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

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

$roles = DB::table('roles')->get();
0
По вопросам рекламы [email protected]