2014-11-07 2 views
0

Я использую Zend Framework 2 и не могу получить роль пользователя. Я использую пользователя zfc и Zfc Rbac. Роли в настоящее время работают, однако я хотел бы получить значения, которые будут использоваться в инструкции if (в контроллере). Какова функция их вызова? У меня включен инструмент разработчика, поэтому я могу видеть назначенную роль, но не могу понять, как это назвать.Как получить роль пользователя с помощью Zend framework2?

Благодаря Matt

+0

Извините, я не понимаю, вы бы создали элемент (элемент формы) со списком ролей ?! Это правильный пример ?! – GianArb

ответ

0

Был использован нижеприведенный код и был в состоянии получить роль зарегистрированного пользователя.

$viewmodel = new ViewModel(); 
$authorize = $this->getServiceLocator()->get('UserRbac\Identity\IdentityRoleProvider'); 
$roles = $authorize->getIdentityRoles(); 
echo $roles[0]; 
    $viewmodel->setVariable("roles", $roles); 
return $viewmodel; 
0

Если у вас есть настройки вы правильно определить в ZfcRbac, то вы можете воспользоваться услугой авторизации (ZfcRbac \ Service \ AuthorizationService), чтобы получить идентичность и ее роли.

$authorizationService->getIdentity()->getRoles(); 
+0

Нужно ли что-то делать в module.php? Я вижу роль в инструменте разработчика, но получаю следующую ошибку, когда я пытаюсь выполнить вышеуказанный код (construct() ** должен быть экземпляром ... \ ZfcRbac \ Service \ Rbac). ** В Провайдере идентификации я использую 'UserRbac \ Identity \ IdentityProvider' Я вижу роль, используемую в базе данных в инструменте разработчика zend. – Matt