Entradas

Vista de Usuarios (Parte 3) Select 2 de Kartik

Les muestro como instalar el Select2 de Kartik e implementarlo en la vista de usuarios tanto en el formulario como el GridView, para el campo status que define si el usuario se encuentra activo o inactivo.  1.- En el composer.json añadir en el require: "kartik-v/yii2-widget-select2": "dev-master" 2.-Ejecutar en el cmd de la carpeta del proyecto: composer update --prefer-dist 3.- Adicionar en la parte superior del formulario donde deseamos el select2 use kartik\select2\Select2; 4.- Crear el método en el modelo para obtener el array  public function getStatusArray(){   $array = [10=>Yii::t('app', 'Active'),9=>Yii::t('app', 'Inactive')];   return $array; } 5.-  Configurar el select2 en el formulario: <?=  $form->field($model, 'status')->widget(Select2::classname(), [     'data' => $model->getStatusArray(),     'options' => ['placeholder' => Yii::t('app', 'Sele...

Vista de Usuarios (Parte 2) Gridview de Kartik

 Gridview de Kartik 1.- Agregamos a nuestro composer.json: "kartik-v/yii2-grid": "dev-master" 2.- Ejecuta en un cmd de la carpeta del proyecto: composer update --prefer-dist 3.- Adiciona en el common/config/main.php debajo de components: 'modules' => [    'gridview' =>  [         'class' => '\kartik\grid\Module'     ] ] 4.- Adiciona en el common/config/params.php: 'params' => [     'bsVersion' => '4.x' ] 5.- Colocamos en la parte superior de nuestro index: sustituyendo use yii\grid\GridView; use kartik\grid\GridView;  6.- Sustituimos el GridView actual por el nuevo     <?php       $gridColumns = [         [             'class'=>'kartik\grid\SerialColumn',             'contentOptions'=>['class'=>'kartik-sheet-style'],             'width'=>'36px',   ...

Vista de Usuarios Yii2 (Variante 2)

 1.- Buscar en frontend/models/SignupForm.php el método que trae Yii2 para registrar usuarios y copiarlo en el modelo de user generado.     public function signup()     {         if (!$this->validate()) {             return null;         }                  $user = new User();         $user->username = $this->username;         $user->email = $this->email;         $user->setPassword($this->password);         $user->generateAuthKey();         $user->generateEmailVerificationToken();         return $user->save() && $this->sendEmail($user);     } 2.- Adicionar en el modelo el use de Usuario que está en el common use common\models\User as UserCommon; 3.- Crear el atributo virtual passwor...

Vista de Usuarios Yii2 (Parte 1)

Quiero mostrarles como modificar la vista de usuarios que creamos en un artículo anterior para que nos permita crear usuarios reutilizando los métodos que ya nos trae el proyecto avanzado de Yii2. 1.- Buscar en frontend/models/SignupForm.php el método que trae Yii2 para registrar usuarios y copiarlo en el modelo de User generado.     public function signup()     {         if (!$this->validate()) {             return null;         }                  $user = new User();         $user->username = $this->username;         $user->email = $this->email;         $user->setPassword($this->password);         $user->generateAuthKey();         $user->generateEmailVerificationToken();         return $user->save() &...

Creando MVC dentro del Módulo con Gii

Imagen
 Para crear Modelo Vista y Controlador (MVC) dentro de un módulo de Yii2 solo necesitamos estos simples pasos: Aquí nuevamente vamos a estar utilizando el generador de código de Yii2, que ya vimos como buscar en una entrada anterior. Vamos a ver que en las opciones que trae encontramos Model Generator 1.- Buscar en el generador de código de Yii2 (Model generator) 2.- Añadir en Table Name: user Table Name es simplemente el nombre de nuestra tabla en la base de datos, si colocamos una letra nos sale el desplegable de todas las tablas del sistema que comiencen con esa letra. 3.- Añadir en Model Class Name: UserList Por defecto en Model Class Name el generador de código nos coloca el nombre de nuestra tabla con el estándar de Mayúsculas que manea Yii2, que viene siendo un Camel Case empezando Mayúscula, en este caso le modifiqué el nombre y le puse UserList para utilizar el modelo de user que ya viene por defecto en el proyecto avanzado de Yii2, puedes hacerle así o dejarle tal cual y ...