PDF de programación - Guía básica de YII framework

Imágen de pdf Guía básica de YII framework

Guía básica de YII frameworkgráfica de visualizaciones

Actualizado el 21 de Mayo del 2020 (Publicado el 26 de Enero del 2018)
1.064 visualizaciones desde el 26 de Enero del 2018
227,3 KB
38 paginas
Creado hace 9a (22/09/2011)
GUIA BASICA DE
YII FRAMEWORK

Por: Gabriel Duarte
gabrielduarte77@gmail.com

Guía Básica de Yii Framework

ÍNDICE

GUIA BASICA DE YII FRAMEWORK............................................................................................................1
INSTALANDO YII Y PRIMERA APLICACIÓN..............................................................................................3
CREANDO MODELOS Y CRUD A PARTIR DE UNA BASE DE DATOS.....................................................4
LENGUAJE Y VISTA POR DEFECTO.............................................................................................................6
MODIFICANDO EL MENÚ..............................................................................................................................7
AUTENTICACIÓN DE USUARIOS.................................................................................................................9
CLAVES FORÁNEAS EN VISTAS.................................................................................................................12
VALIDANDO LOS FORMULARIOS.............................................................................................................15
ORDEN POR DEFECTO Y CONDICION EXTRA EN GRID.......................................................................17
FECHAS CON CJUIDATEPICKER................................................................................................................18
BÚSQUEDAS POR FECHAS CON SYDATECOLUMN...............................................................................20
EXPORTAR DEL CGRIDVIEW A PDF..........................................................................................................22
REPORTES A PARTIR DE UNA BÚSQUEDA...............................................................................................25
COMBOS DEPENDIENTES............................................................................................................................28
CAMPO CON AUTOCOMPLETAR................................................................................................................31
NO MOSTRAR INDEX.PHP EN LAS URL....................................................................................................33
GUARDAR AUTOMÁTICAMENTE USUARIO Y FECHA DE CREACIÓN Y MODIFICACIÓN............34
HACER FORMULARIO PARA MULTIPLES MODELOS............................................................................35
CAMPOS ENMASCARADOS EN FORMULARIO.......................................................................................38

2

INSTALANDO YII Y PRIMERA APLICACIÓN

Guía Básica de Yii Framework

Lo primero que hacemos es bajarnos la ultima versión de Yii Framework desde
http://www.yiiframework.com la descomprimimos en nuestro directorio web, le cambiamos el nombre a “yii”
y le damos permisos de lectura.

Abrimos la consola, nos ubicamos en la www y colocamos: yii/framework/yiic webapp
nombre_aplicacion, nos va a preguntar si queremos crear una aplicación web en ese directorio y le decimos
que si.

Con esto hemos creado nuestra primera aplicación en Yii. En el próximo capitulo se explicará como

conectar nuestra aplicación con una base de datos y como crear el modelo y el CRUD de las tablas.

3

CREANDO MODELOS Y CRUD A PARTIR DE

UNA BASE DE DATOS

Una vez creada la aplicación abrimos el archivo /protected/config/admin.php y modificamos lo

Guía Básica de Yii Framework

siguiente:

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

Descomentamos el arreglo gii y colocamos el password que queramos, 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í:

'db'=>array(

'connectionString' => 'pgsql:host=localhost;dbname=nombre_base_datos',

'emulatePrepare' => true,

'username' => 'usuario',

'password' => 'clave.usuario',

'charset' => 'utf8',

),

4

Guía Básica de Yii Framework

Para dirigirnos al modelo GII copiamos en nuestra barra de direcciones algo como
http://localhost/nombre_aplicacion/index.php?r=gii, nos pide el password que configuramos 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. Si logramos conectarnos satisfactoriamente a la base de datos nos mostrará algo como la
siguiente imagen.

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'=>'Estado', 'url'=>array('/estado/admin')),

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

5

LENGUAJE Y VISTA POR DEFECTO

Guía Básica de Yii Framework

En /protected/config/admin.php al final colocar dentro del arreglo principal:


'language'=>'es', // Este es el lenguaje en el que quieres que muestre las cosas
'sourceLanguage'=>'en', // Este es el lenguaje por defecto de los archivos
'defaultController'=>'controlador/admin', // Vista por defecto

Esto no nos traduce las vistas completamente, muchas cosas hay que cambiarlas a mano.
Si queremos colocar un favicon en el head de protected/views/layouts/main.php colocamos:

<link rel="shortcut icon" href="<?php echo Yii::app()->request->baseUrl; ?
>/images/icon.png" type="image/x-icon" />

6

MODIFICANDO EL MENÚ

Guía Básica de Yii Framework

A continuación vamos a modificar el menú, de tal forma que nos quede mas espacio para las vistas y

las acciones de las vistas (crear, modificar, eliminar) se coloquen por debajo del menú principal. Para eso
modificamos el /protected/views/layouts/column2.php:

- Cambiamos el nombre del id del div “sidebar” por “mainmenu”.

- Colocamos el nuevo div “mainmenu” (completo) dentro del div con class=“span-19”.

- Cambiamos class=“span-19” por class”span-25”.

- Comentamos las siguientes lineas de código:

$this->beginWidget('zii.widgets.CPortlet', array('title'=>'Operations',));
'htmlOptions'=>array('class'=>'operations'),
$this->endWidget();

En el /protected/views/layouts/main.php:

- Comentamos las lineas:

<?php if(isset($this->breadcrumbs)):?>
<?php $this->widget('zii.widgets.CBreadcrumbs', array('links'=>$this-
>breadcrumbs,)); ?>
<?php endif?>

Al aplicar estos cambios el menú quedaría mas o menos así:

Si queremos un menú mas potente podemos usar la extensión mbmenu, bajamos la extensión de la

pagina oficial de Yii y copiamos la carpeta /protected/extensions

En /protected/views/layouts/main.php cambiar el widget del CMenu por algo como:

<?php $this->widget('application.extensions.mbmenu.MbMenu',array(
'items'=>array(
array('label'=>'Home', 'url'=>array('/site/index')),
array('label'=>'Principal', 'url'=>array('/site/contact'),

7

Guía Básica de Yii Framework

'items'=>array(
array('label'=>'Usuarios', 'url'=>array('/usuario')),
array('label'=>'Contratos', 'url'=>array('/contrato')),
),
),
array('label'=>'Prueba',
'items'=>array(
array('label'=>'Sub 1',
'url'=>array('/site/page','view'=>'sub1')),
array('label'=>'Sub 2',
'items'=>array(
array('label'=>'Sub sub 1',
'url'=>array('/site/page','view'=>'subsub1')),
array('label'=>'Sub sub 2',
'url'=>array('/site/page','view'=>'subsub2')),
),
),
),
),
),
)); ?>

Al colocar el nuevo menú seguramente se ve extraño, para evitar esto debemos quitar el

id=“mainmenu”.

Con estos cambios queda mas espacio para las vistas y el pequeño menú de la derecha queda por

debajo del menú principal.

8

AUTENTICACIÓN DE USUARIOS

Este es el sql de la tabla donde se guardaran nuestros usuarios:

Guía Básica de Yii Framework

CREATE TABLE usuario (
id serial NOT NULL,
username character varying(128) NOT NULL,
password character varying(128) NOT NULL,
CONSTRAINT usuario_pkey PRIMARY KEY (id) )
WITH (OIDS=FALSE);
ALTER TABLE usuario OWNER TO postgres;

Debes crear el modelo y el CRUD de esta tabla con el Gii

En protected/components/UserIdentity.php sustituimos la clase UserIdentity por:

class UserIdentity extends CUserIdentity
{
private $_id;
public function authenticate()
{
$username=strtolower($this->username);
$user=Usuario::model()->find('LOWER(username)=?',array($username));
if($user===null)
$this->errorCode=self::ERROR_USERNAME_INVALID;
else if(!$user->validatePassword($this->password))
$this->errorCode=self::ERROR_PASSWORD_INVALID;
else
{
$this->_id=$user->id;
$this->username=$user->username;
$this->errorCode=self::ERROR_NONE;
}
return $this->errorCod
  • Links de descarga
http://lwp-l.com/pdf8481

Comentarios de: Guía básica de YII framework (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad