在Bolt CMS中,是否可以检查控制器中的角色成员资格?

时间:2016-02-15 14:15:22

标签: php bolt-cms

我正在尝试在Bolt CMS安装的后端添加一些功能,以执行以下操作:

  1. 检查用户是否是“受限编辑”组的成员。
  2. 如果是这样,只列出他们个人拥有的内容。
  3. 这需要在控制器内,而不是使用Twig。

    我使用

    获得了用户对象

    $ user = $ app ['users'] - > getCurrentUser();

    我想我可以使用

    in_array('limitededitor',$ user [“roles”]);

    但是我想知道Bolt中是否有任何现有的功能可以简化这一点,比如“isAllowed”,但用于检查角色成员身份?

1 个答案:

答案 0 :(得分:0)

这是我过去用来确定是否安装控制器(从而允许访问新网址),关键部分是用户服务有hasRole方法但你需要按用户ID进行检查。

public function checkAuth() { $currentUser = $this->app['users']->getCurrentUser(); $currentUserId = $currentUser['id']; foreach (['admin', 'root', 'developer', 'editor'] as $role) { if ($this->app['users']->hasRole($currentUserId, $role)) { return true; } } return false; }