tigroid3
@tigroid3
PHP, YII2, SQL, Postgres, Docker, SPHINX, GIT

Как правильно использовать роли в YII?

есть 4 роли: активный: 1, не активный: 0, забаненый: -1 и вообще не зарегистрированные гости
соответственно у каждого пользователя есть поле со статусом.
Мне надо чтобы в админке я выставлял те роли, кто будет видеть определённый виджет.
Каким образом правильнее реализовать подобное? каков ход действий?
  • Вопрос задан
  • 484 просмотра
Решения вопроса 1
sanchezzzhak
@sanchezzzhak
Ля ля ля...
RBAC https://habrahabr.ru/post/235485/
создаем role создаем для роли правила если надо
создаем permision для ролей
дальше нужно задать пользователю role или permisions.

if(Yii::$app->user->can('Пермиcион или имя роли')){
// вызов виджета
}

goo.gl/eNuJ5K
в админке что то похожие сделаете где редактирование пользователей.

По простому это дополнительное поле в таблице пользователей показывать виджет или нет.
if(Yii::$app->user->identity->show_widget) {}

ps Yii::$app->user->identity каждый раз делает запрос к БД
Yii::$app->user->getidentity(false)->show_widget берет данные ранее полученные
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы