十月CMS - 获取当前用户的组代码?

时间:2017-12-19 01:51:52

标签: octobercms octobercms-plugins octobercms-backend

我需要在后端获取当前用户的组代码,我该怎么做?

2 个答案:

答案 0 :(得分:1)

我想您需要检查天气用户是否在群组内部,并根据您需要强制执行某些安全/权限等。

这是可能有用的代码。

  

用户可以拥有多个usergroup,因此您可以获得多个usergroup-code,然后您可以从中进行检查。 (在此示例中,我们检查用户的组中是否有owners个代码)

$user = \BackendAuth::getUser();
$currentUserGroups = $user->getGroups();
$userGroupCodes = [];

$neededCode = 'owners';

foreach ($currentUserGroups as $group) {
    $userGroupCodes[] = $group->code;
}

$hasPermission = false;
if(in_array($neededCode, $userGroupCodes)) {
    $hasPermission = true;
}

dd($hasPermission);
  

$ hasPermission 将具有布尔值,现在您可以在您的条件中使用它并强制执行安全性。

答案 1 :(得分:1)

较短版本的 Hardik Satasiya 代码

$user = \BackendAuth::getUser();
$userGroupCodes = $user->getGroups()->lists('code');

$neededCode = 'owners';

$hasPermission = in_array($neededCode, $userGroupCodes);