1

所以我选择了 Sentinel 作为我的 CMS 的 ACL。我已经到了需要为用户分配角色的地步。为此,我需要获取所有可用角色的列表。但是在请求时:

Role::all()

从我的模型(扩展了 EloquentRole)中,我只得到了 id。虽然 id 是一个好的开始,但我需要更多。最好:

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

我一直在寻找一种方法来获得这个。但是文档和世界似乎都没有对此发表意见。

任何提示将非常感谢!

4

3 回答 3

1

将所有可用角色作为数组获取:

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

或者,如果您需要 Eloquent(Role) 对象:

$roles = DB::table('roles')->get();
于 2017-10-21T01:26:24.863 回答
0

所以看起来我有点雄辩。它似乎

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

确实不行。但是一个常规的:

Role::get()

做。哎呀

于 2015-12-16T08:34:27.137 回答
0

里面有getRoles()功能

cartalyst/sentinel/src/Roles/RoleableInterface.php

\Sentinel::getRoles()你可以在 Laravel中使用它。

这个可能更简单。

$roles = Sentinel::getRoleRepository()->get();
    foreach ($roles as $role) {
        echo $role->name."<br/>";
    }
于 2017-01-21T18:47:53.543 回答