Yii Framework Forum: Yii-User Extension (Pt_Br) - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Yii-User Extension (Pt_Br) Rate Topic: ****- 1 Votes

#1 User is offline   Mat_R 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 5
  • Joined: 06-May 14

Posted 28 May 2014 - 02:41 PM

Olá,

Sou novo no Yii e instalei a extensão Yii-User, aparentemente está funcionando normalmente, mas tenho uma dúvida: Para cadastrar usuários existe o registration (index.php?r=User/Registration) e o (index.php?r=User/admin/create), o último só o usuário com poderes de admin pode acessar. Qual seria a diferença entre eles se teoricamente os dois criam usuário na tabela Users? E ao tentar cadastrar por meio do User/admin/create ocorre um erro (texto abaixo). Sei que é algo com o Profile. Se puderem ajudar...

ERRO apontado na linha 85.

PHP notice

Undefined index: Profile

/var/www/teste-extension/protected/modules/user/controllers/AdminController.php(85)

73 * Creates a new model.
74 * If creation is successful, the browser will be redirected to the 'view' page.
75 */
76 public function actionCreate()
77 {
78 $model=new User;
79 $profile=new Profile;
80 $this->performAjaxValidation(array($model,$profile));
81 if(isset($_POST['User']))
82 {
83 $model->attributes=$_POST['User'];
84 $model->activkey=Yii::app()->controller->module->encrypting(microtime().$model->password);
85 $profile->attributes=$_POST['Profile']; //linha do erro
86 $profile->user_id=0;
87 if($model->validate()&&$profile->validate()) {
88 $model->password=Yii::app()->controller->module->encrypting($model->password);
89 if($model->save()) {
90 $profile->user_id=$model->id;
91 $profile->save();
92 }
93 $this->redirect(array('view','id'=>$model->id));
94 } else $profile->validate();
95 }
96
97 $this->render('create',array(
0

#2 User is offline   Fábio Sales 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 105
  • Joined: 20-January 11

Posted 31 January 2015 - 08:44 PM

Olá,

A diferença é a forma de acesso mesmo. Na primeira URL, o usuário pode se cadastrar sem precisar solicitar ä alguem que tenha acesso ao backend.

No caso do erro, acredito que ocorre porque não foi associado nenhum perfil ao usuário. Você pode corrigí-lo verificando se a variável está setada:

                        if (isset($_POST['Profile'])) {
                            /*...*/
                        }

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users