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:
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.