Академический Документы
Профессиональный Документы
Культура Документы
La Arquitectura ModeloVistaControlador (MVC)
SYMFONY se basa en el diseño web a tres capas MVC.
El modelo representa la información con la que trabaja la aplicación, resolviendo la lógica de negocio y el
acceso a los datos
La vista transforma el modelo en una página web, encargándose de la presentación visual de los datos
El controlador se encarga de procesar las peticiones del usuario, de decidir cual es la acción que se ejecutará
a continuación y de realizar los cambios en la vista y en el modelo
Usuario
Petición Internet
Controlador Respuesta
Vista
Modelo
datos
Servidor
José Antonio Morgado Berruezo Desarrollo de Aplicaciones web
morgadoberruezo@gmail.com con el Framework Symfony y Ajax
EL FRAMEWORK SYMFONY
La Arquitectura ModeloVistaControlador (MVC)
Petición
Internet
Usuario
Controlador
Controlador Frontal
Respuesta
Acción
Layout
Acceso
a Datos Lógica
Vista
Abstracción
Base Datos Plantilla
Modelo Vista
datos
Desarrollo de Aplicaciones web
Servidor
José Antonio Morgado Berruezo con el Framework Symfony y Ajax
morgadoberruezo@gmail.com
CREAR LA APLICACIÓN WEB
Crear el Proyecto
▸ SYMFONY divide un proyecto en aplicaciones, las aplicaciones en módulos y estos contienen las acciones
SYMFONY divide un proyecto en aplicaciones, las aplicaciones en módulos y estos contienen las acciones
Todas las aplicaciones comparten el mismo modelo y la base de datos
▸ Los proyectos siguen una estructura de directorios predefinida. Symfony automatiza la
creación de proyectos creando la estructura básica de directorios siempre que se tengan los
permisos adecuados.
▸ Nos situamos en nuestro directorio workspace:
Abrimos eclipse y creamos el proyecto libreria. Nota: Esto es para que eclipse lo interprete como
proyecto
Accedemos desde consola a ese directorio con cd libreria.
Ejecutamos:
Symfony initproject libreria
Desarrollo de Aplicaciones web
José Antonio Morgado Berruezo con el Framework Symfony y Ajax
morgadoberruezo@gmail.com
CREAR LA APLICACIÓN WEB
Crear la Aplicación
▸ Para crear una aplicación nos introducimos dentro del proyecto y ejecutamos
Symfony initapp backend
Habiendo creado una estructura de directorios predefinida para nuestra aplicación
▸ El directorio de publicación web quedaría de la siguiente forma:
index.php: controlador frontal (produccion)
de la 1ª aplicación creada (backend.php)
Para la 2ª aplicación creada el controlador frontal se nombra por
apliacion.php, en nuestro caso backend.php
Los entornos de desarrollo serían aplicacion_dev.php, en nuestro
caso frontend_dev.php y backend_dev.php
▸ Las imágenes de nuestro proyecto estarán en la carpeta images
del directorio web, los ficheros css y archivos javascripts los almacenamos
en las carpetas css y js respectivamente
Desarrollo de Aplicaciones web
José Antonio Morgado Berruezo con el Framework Symfony y Ajax
morgadoberruezo@gmail.com
CREAR LA APLICACIÓN WEB
Controladores creados
▸ index.php(controlador frontal del entorno de ▸ frontend_dev.php (controlador frontal del entorno de
producción de la aplicación frontend) desarrollo de la aplicación frontend)
<?php <?php
require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'apps'.DIRECTORY require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'apps'.DIRECTORY_S
_SEPARATOR.SF_APP.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPA EPARATOR.SF_APP.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATO
RATOR.'config.php'); R.'config.php');
sfContext::getInstance()->getController()->dispatch(); sfContext::getInstance()->getController()->dispatch();
▸ backend.php (controlador frontal del entorno de ▸ backend_dev.php (controlador frontal del entorno de
producción de la aplicación backend) desarrollo de la aplicación backend)
<?php <?php
require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'apps'.DIRECTORY require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'apps'.DIRECTORY_
_SEPARATOR.SF_APP.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPA SEPARATOR.SF_APP.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARA
RATOR.'config.php'); TOR.'config.php');
sfContext::getInstance()->getController()->dispatch(); sfContext::getInstance()->getController()->dispatch();
Desarrollo de Aplicaciones web
José Antonio Morgado Berruezo con el Framework Symfony y Ajax
morgadoberruezo@gmail.com
José Antonio Morgado Berruezo Desarrollo de Aplicaciones web
morgadoberruezo@gmail.com con el Framework Symfony y Ajax