Continuando con los tutoriales de Yii esta vez vamos a empezar con otra herramienta muy buena que incluye este framework y es el generador de codigo. Una herramienta que nos ayuda a generar la estructura base de una aplicacion, por ejemplo, controladores, views, modelos, formularios e incluso CRUDs (Create Read Update Delete).

Hoy vamos a ver solo la primera parte, como crear controllers y views. En el tutorial anterior, cuando vimos como hacer el clasico Hola Mundo! con Yii, entendimos un poco como es la organizacion de archivos y carpetas pero a veces puede ser una molestia estar creando cada uno de esos archivos y carpetas a mano, y es en eso en lo que nos va a ayudar Gii , el generador de codigo de Yii.

Lo primero sera activarlo, porque por defecto viene desactivado. Para eso abrimos el archivo main.php que se encuentra dentro de protected/config y dentro de el veremos un pedazo de codigo parecido a este:

[php] ‘modules’=>array( // uncomment the following to enable the Gii tool /* ‘gii’=>array( ‘class’=>‘system.gii.GiiModule’, ‘password’=>‘mi_password’, // If removed, Gii defaults to localhost only. Edit carefully to taste. ‘ipFilters’=>array(‘127.0.0.1’,'::1'), ), */ ), [/php]

Como veran hay una seccion comentada, deben descomentarla para que quede asi:

[php] ‘modules’=>array( // uncomment the following to enable the Gii tool ‘gii’=>array( ‘class’=>‘system.gii.GiiModule’, ‘password’=>‘mi_password’, // If removed, Gii defaults to localhost only. Edit carefully to taste. ‘ipFilters’=>array(‘127.0.0.1’,'::1'), ), ), [/php]

Y antes de cerrar el arhivo no se olviden de cambiar la contraseña que alli aparece. Con eso ya tienen activada la herramienta Gii. Pueden acceder a ella desde el navegador en la siguiente url: localhost/testyii/index.php?r=gii

Como veran esta es una herramienta con interfaz web. Una vez que se han logueado veran una pantalla con las opciones de este generador de codigo:

Gii

La opcion que nos interesa esta vez es ‘Controller Generator’. Al entrar en esa opcion solo vemos 2 campos. En, ‘Controller ID’ va el nombre del controlador y en ‘Actions IDs’ van las acciones que quieren separadas por coma. Ej:

controller

Al darle click a Preview, todavia no genera nada de codigo. Sino que muestra que es lo que va a crear. Y al darle click al boton Generate si crea ya todos los archivos, carpetas y codigo.

Preview Gii

Aclaraciones

  • Esta herramienta es solo para ‘ayudar’ a crear codigo.
  • Tambien puedes usar tus propios templates en vez del que viene por default.
  • Si les da algun error es por los permisos de las carpetas, habra que corregirlos.
  • Y es muy importante desactivar la herramienta en produccion porque obviamente puede generar archivos y codigo que no queremos.

Espero que les esten gustando estos pequeños tutoriales de Yii :)