0

我在 Yii 中使用 users + auth 模块。我使用管理在身份验证中创建了 3 个角色:

auth/role/ 
  1. 行政
  2. 公司
  3. 其他

此外,在用户模块

user/profileField

我已经创建了一个个人资料字段,它将在注册页面中确定您要创建的帐户

[boolean: true="Company" false="Other"]

Admin acc 只能在模块中创建

我想在注册过程中根据这个字段分配角色。我想我应该用这种方法写这个(?):

/user/controllers/RegistrationController.php:
public function actionRegistration(){...
...
 if ($model->save()) {
                        $profile->user_id=$model->id;
                        ....my role assign here ?...
                        $profile->save();
 ...

顺便说一句:直接更改 /user/controllers/RegistrationController.php 是否优雅?

4

1 回答 1

3

要将角色分配给用户,请使用:

Yii::app()->authManager->assign($role,$userId);

正如这里所解释的

于 2013-10-25T13:43:20.450 回答