Назначение ролей пользователю в процессе регистрации [yii (users + auth)]

Я использую модули users + auth в Yii. Я сделал 3 роли в auth с помощью администрирования:

auth/role/ 
  1. Админ
  2. Компания
  3. Другой

Также в пользовательском модуле

user/profileField

Я сделал одно поле профиля, которое будет определять на странице регистрации, какую учетную запись вы хотите создать.

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

Аккаунт администратора можно создать только в модуле

Я хочу назначать роли на основе этого поля в процессе регистрации. Я предполагаю, что я должен написать это в этом методе (?):

/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?


person ZeD    schedule 24.10.2013    source источник


Ответы (1)


Для назначения ролей пользователям используйте:

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

как описано здесь

person topher    schedule 25.10.2013
comment
Спасибо за помощь ! - person ZeD; 28.10.2013