Crear modelos y CRUDs en Yii Framework

| 2013-03-3 | No hay comentarios »

Una vez que tengamos una aplicación creada abrimos el archivo /protected/config/main.php y modificamos lo siguiente:

'modules'=>array(
/*
'gii'=>array(
'class'=>'system.gii.GiiModule',
'password'=>'Enter Your Password Here',
'ipFilters'=>array('127.0.0.1','::1'),
),
*/
),

Descomentamos el arreglo y colocamos el password deseado, el modulo gii es el que nos ayuda a crear el modelo y el CRUD de las tablas de nuestra base de datos, a continuación vamos a configurar la conexión, para ello debemos comentar el siguiente arreglo:

'db'=>array(
 'connectionString' => 'sqlite:'.dirname(__FILE__).'/../data/testdrive.db',
 ),

Y creamos nuestro nuevo arreglo de conexión así (para mysql):

'db'=>array(
'connectionString' => 'mysql:host=localhost;dbname=nombre_db',
'emulatePrepare' => true,
'username' => 'usuario',
'password' => 'contraseña',
'charset' => 'utf8',
),

Para dirigirnos a gii copiamos en nuestra barra de direcciones lo siguiente: http://localhost/nombre_aplicacion/index.php?r=gii, debemos de ingresar el password que hemos definido anteriormente, una vez dentro le damos a “Model Generator” y colocamos el nombre de la tabla, le damos Preview y luego Generate, a continuación creamos el CRUD en “Crud Generator” colocando el nombre del modelo que acabamos de crear,  le damos Preview y luego Generate.

Ilustración:

 yii-ejemplo

Con esto hemos creado todas las vistas, el controlador y el modelo para esa tabla en particular, las vistas son: create, update, index, admin y view.
Para agregar el modelo nuevo al menú nos vamos al archivo /protected/views/layouts/main.php y modificamos el arreglo de items del menú agregándole uno nuevo de la siguiente forma:


array('label'=>'Usuarios', 'url'=>array('/user/admin')),

El /user representa el nombre del controlador y el /admin el nombre de la acción que utiliza la vista admin.

Ya podemos probar que podemos crear, modificar y eliminar registros de nuestro modelo.

Sin dudas Yii ofrece este potente generador de código (gii) que por cierto es 100% personalizable.

Acerca del autor: Rodrigo Paszniuk

Ingeniero Informático, amante de la tecnología, la música, el ciclismo y aprender cosas nuevas.

Posts Relacionados

  • Reportes gráficos en Yii
  • Backup en Yii
  • Manual intermedio de Yii framework (PHP)
  • Maestro-Detalle / Factura Compra en Yii – Parte II



SEGUÍNOS EN FACEBOOK


GITHUB