symfony la vista y el controlador (mvc)

Post on 26-Jan-2015

4 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

SymfonyLa Vista y el Controlador

(MVC)

http://hydras.com.arhttp://luxorit.com

Cada Cosa en su lugar

Cada Cosa en su lugar

• Un patrón de arquitectura nos ayudará a…• Ubicar correctamente nuestro código• Separar funcionalidades• Testear las partes y el todo• Desarrollo Agil• Cambia la implementación pero no la esencia

Django-Python, MVC Framework-.Net, Struts-Java,Ruby on Rails

Evitar la duplicación de código

Decorator

apps/frontend/templates/

Patrón Decorator

• El patrón Decorator responde a la necesidad de añadir dinámicamente funcionalidad a un Objeto.

• Sirve Cuando la extensión mediante la herencia no es viable.

• Muy utilizado para separar contenido de presentación

Otros componentes de la vista• Slots

• Partials

Analizando la estructura del layout

• La importancia de $sf_content• Incluyendo hojas de Estilo, imágenes, y

javaScripts. ¿Dónde están las referencias?• La estructura del archivo view.yml

Principios de configuración en Symfony

Para los muchos archivos de configuración de Symfony, la misma configuración se puede definir en diferentes niveles:

• La configuración por defecto se encuentra en el framework

• La configuración global para el proyecto (en config/)• La configuración local de una aplicación (en

apps/MYAPP/config/)• La configuración local limitada a un módulo (en

apps/MYAPP/modules/MYMODULE/config/)

El controlador frontal

• Es el único punto de entrada a la aplicación

• Carga la configuración y determina la acción a ejecutarse.

• Las acciones contienen la lógica de la aplicación. Verifican la integridad de las peticiones y preparan los datos requeridos por la capa de presentación.

El controlador frontal

• Los objetos request, response y session dan acceso a los parámetros de la petición, las cabeceras de las respuestas y a los datos persistentes del usuario

• Los filtros son trozos de código ejecutados para cada petición, antes o después de una acción.

Actions

• cclass mimoduloActions extends sfActions{public function executeIndex($peticion){// Obteniendo parametros de la petición$password = $peticion->getParameter('password');// Obteniendo información del controlador$nombreModulo = $this->getModuleName();

Actions$nombreAccion = $this->getActionName();// Obteniendo objetos del núcleo del framework$sesionUsuario = $this->getUser();$respuesta = $this->getResponse();$controlador = $this->getController();$contexto = $this->getContext();$this->setVar('parametro', 'valor');$this->parametro = 'valor';// Guardar información en la sesión del usuario$this->getUser()->setAttribute('nombre', $nombre);}}

¿Ganas de profundizar?

• Symfony 1.2 la guía definitiva Capítulos 6 y 7.

top related