yii2-admin проверить роль пользователя

0

У меня есть роль Creator и я хочу знать, как я могу проверить, имеет ли зарегистрированный пользователь Creator.

Я создал функцию в своем классе User как:

public function getIsCreator(){
     $role = Yii::$app->authManager->getRole('Creator')->name;
     $rolesById = Yii::$app->authManager->getRolesByUser($this->id);

     return in_array($role, $rolesById);
}

Может ли кто-нибудь сказать мне, где я ошибаюсь? Потому что вышеуказанный код не проверяет, как ожидалось.

  • 1
    var_dump ваши значения и посмотрите, что у вас там, не так ли?
  • 0
    Попробовал это. Ничего не подходит
Показать ещё 5 комментариев
Теги:
yii2
yii2-user

1 ответ

0

Чтобы проверить, имеет ли пользователь заданную роль или нет, вы можете использовать эту функцию:

public function hasRole($roleName, $userId) {
    $authManager = \Yii::$app->getAuthManager();
    return $authManager->getAssignment($roleName, $userId) ? true : false;
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню