Desarrollo web ágil
Introducción a Yii
http://www.yiiframework.com/
Por: Leonardo Bravo Illanes
[email protected] 2015
Por que PHP?
W3Techs, “Historical trends in the usage of serverside programming
languages for websites”.
Por: Leonardo Bravo Illanes
[email protected] 2015
Por que MVC?
● Incrementa la reutilización de código, esto facilita la mantención
y evolución del proyecto.
● Agiliza el desarrollo.
Por: Leonardo Bravo Illanes
[email protected] 2015
Por que Yii?
Por: Leonardo Bravo Illanes
[email protected] 2015
Por que Yii?
En el gráfico, RPS significa "solicitud por segundo", que describe el número de solicitudes
una aplicación escrita en un marco puede procesar por segundo. Cuanto mayor sea el
número, más eficiente es un marco. Como podemos ver que Yii supera a todos los otros
marcos en esta comparación. (APC = Alternative PHP Cache)
Por: Leonardo Bravo Illanes
[email protected] 2015
Yii Instalación
Requisitos:
● PHP5 o superior
● Webservice (Apache u Otro)
● Base de Datos (Sqlite3, MySQL, PostgreSQL)
Por: Leonardo Bravo Illanes
[email protected] 2015
Yii Instalación
● Descargar la ultima versión Oficial (Zip / Tar.gz)
● Descomprimir en la carpeta de desarrollo
● Modificar el archivo “config/web.php “ y ingresar un código random para cookieValidationKey
Por: Leonardo Bravo Illanes
[email protected] 2015
Yii Instalación
sudo aptget install y php5 apache2 sqlite3 php5sqlite
echo "Ingrese nombre del Sitio web (sin espacios):"
read webname
wget https://github.com/yiisoft/yii2/releases/download/2.0.6/yiibasicapp2.0.6.tgz
tar xzvf yiibasicapp2.0.6.tgz
mv basic $webname
cd $webname
path=$(pwd)
link_apache=$(echo $path"/web/ /var/www/html/"$webname)
sudo ln s $link_apache
sudo chmod 777 R *
Luego el sitio web estará disponible en: http://localhost/"$webname
Por: Leonardo Bravo Illanes
[email protected] 2015
Yii Instalación
CookieValidationKey'
Editar “config/web.php” y colocar una clave random para las Cookies
Por: Leonardo Bravo Illanes
[email protected] 2015
Yii Instalación
Fin Instalación :)
Por: Leonardo Bravo Illanes
[email protected] 2015
Yii – Estructura
Por: Leonardo Bravo Illanes
[email protected] 2015
Sistema de Publicación e Inscripción de eventos:
Ejemplo
Por: Leonardo Bravo Illanes
[email protected] 2015
Ejemplo
sqlite3 database
> CREATE TABLE Rol (id integer primary key not null, rolname varchar(50));
> CREATE TABLE Users (id integer primary key not null, name varchar(50), passwd
varchar(100), id_rol integer, FOREIGN KEY(id_rol) REFERENCES Rol(id));
> CREATE TABLE Event (id integer primary key not null, id_admin integer, name varchar(50),
photo varchar(100), description text, date_ini datetime, date_end datetime, place varchar(100),
contact varchar(100), FOREIGN KEY(id_admin) REFERENCES Users(id));
> CREATE TABLE Registration (id integer primary key not null, id_event integer, name
varchar(100), mail varchar (100), FOREIGN KEY(id_event) REFERENCES Event(id));
Por: Leonardo Bravo Illanes
[email protected] 2015
Ejemplo
Configurar Yii con la Base de Datos
Editar el archivo “config/db.php”
MySQL
Por: Leonardo Bravo Illanes
[email protected] 2015
Ejemplo
Configurar Yii con la Base de Datos
Editar el archivo “config/db.php”
dns:
● SQLite: sqlite:/path/to/dbfile
● MySQL/MariaDB: mysql:host=localhost;dbname=testdb
● PostgreSQL: pgsql:host=localhost;port=5432;dbname=testdb
● SQL Server: mssql:host=localhost;dbname=testdb
● Oracle: oci:dbname=//localhost:1521/testdb
Por: Leonardo Bravo Illanes
[email protected] 2015
Ejemplo
Configurar Yii con la Base de Datos
Editar el archivo “config/db.php”
Para el ejemplo usaremos sqlite
Por: Leonardo Bravo Illanes
[email protected] 2015
Ejemplo
Configurar Yii con la Base de Datos
● Copiamos la BDD SQLite a la carpeta “config/”
● Dar permisos de ejecución, lectura y escritura a la Base de Datos
Por: Leonardo Bravo Illanes
[email protected] 2015
● Ir a “index.php?r=gii”
GII
Por: Leonardo Bravo Illanes
[email protected] 2015
Ejemplo
sqlite3 database
> CREATE TABLE Rol (id integer primary key not null, rolname varchar(50));
> CREATE TABLE Users (id integer primary key not null, name varchar(50), passwd
varchar(100), id_rol integer, FOREIGN KEY(id_rol) REFERENCES Rol(id));
> CREATE TABLE Event (id integer primary key not null, id_admin integer, name varchar(50),
photo varchar(100), description text, date_ini datetime, date_end datetime, place varchar(100),
contact varchar(100), FOREIGN KEY(id_admin) REFERENCES Users(id));
> CREATE TABLE Registration (id integer primary key not null, id_event integer, name
varchar(100), mail varchar (100), FOREIGN KEY(id_event) REFERENCES Event(id));
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Model
Modelo Tabla Users
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Model
Modelo Tabla Users
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Model
Modelo Tabla Users
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Model
Modelo Tabla Users
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Model
Modelo Tabla Users
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Controller
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Controller
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Controller
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Controller
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Controller
index.php?r=users/create
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Controller
index.php?r=users/view
Por: Leonardo Bravo Illanes
[email protected] 2015
index.php?r=users/index
GII Vistas
Por: Leonardo Bravo Illanes
[email protected] 2015
GII Controller
delete
Por: Leonardo Bravo Illanes
[email protected] 2015
Widget Install
Composer es una herramienta para la gestión de la dependencia en PHP.
https://getcomposer.org/
http://www.yiiframework.com/extension/yii2widgets/
Por: Leonardo Bravo Illanes
[email protected] 2015
Widget Install
Por ejemplo en Event – Create, añadiremos un widget para las fechas
Instalar Composer
1) Ir a la carpeta del proyecto
2) Decargar composer
curl sS https://getcomposer.org/installer | php
Por: Leonardo Bravo Illanes
[email protected] 2015
Widget Install
Por ejemplo e
Comentarios de: Desarrollo web ágil - Introducción a Yii (0)
No hay comentarios