Yii2 Роль swiching после входа в систему - PullRequest
0 голосов
/ 11 декабря 2018

У пользователя есть 3 роли.

  1. RoleOne
  2. RoleTwo
  3. RoleThree

После входа в систему я хочу активировать одну из его ролей в активном режиме, а остальные роли неактивныРежим.Есть ли у Yii2 техника смены ролей?Или мы должны создать свою собственную логику.

Вот как я пытаюсь этого добиться ...

$auth = new DbManager;
$auth->init();

//here I will get all roles of user              
$roles = $auth->getRolesByUser(Yii::$app->user->identity->id);

Теперь, после этого, как можно установить активную роль из переменной $roles.Между ними пользователь может активировать и другие роли.Я здесь смущен, на самом деле нет никакой функциональности yii2, такой как смена ролей в любое время после входа в систему.

1 Ответ

0 голосов
/ 12 декабря 2018

Yii2 не предоставляет ту обширную функцию, которую вы ищете.Но попробуйте этот https://github.com/webvimark/user-management модуль.Он гибкий, и у него есть помощник, который назначает роли следующим образом:

User::assignRole(Yii::$app->user->identity->id, $roleName)
Прочитайте документацию по ссылке выше для получения дополнительной информации о том, как это работает
...