我正在尝试在Bolt CMS安装的后端添加一些功能,以执行以下操作:
这需要在控制器内,而不是使用Twig。
我使用
获得了用户对象$ user = $ app ['users'] - > getCurrentUser();
我想我可以使用
in_array('limitededitor',$ user [“roles”]);
但是我想知道Bolt中是否有任何现有的功能可以简化这一点,比如“isAllowed”,但用于检查角色成员身份?
答案 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;
}