www.librosweb.es
Symfony
la guía definitiva
Fabien Potencier, François Zaninotto
Symfony, la guía definitiva
Sobre este libro...
▪ Esta versión impresa se creó el 20 de febrero de 2008 y todavía está in-
completa. La versión más actualizada de los contenidos de este libro se puede
encontrar en http://www.librosweb.es/symfony
▪ Si quieres aportar sugerencias, comentarios, críticas o informar sobre errores,
puedes contactarnos en
[email protected]
www.librosweb.es
2
Symfony, la guía definitiva
Capítulo 1. Introducción a Symfony............................................................... 13
1.1. Symfony en pocas palabras ...................................................................... 13
1.1.1. Características de Symfony ................................................................13
1.1.2. ¿Quién ha desarrollado Symfony y por qué motivo? ...............................15
1.1.3. La comunidad Symfony ...................................................................... 16
1.1.4. ¿Es adecuado Symfony para mí? .........................................................16
1.2. Conceptos básicos................................................................................... 17
1.2.1. PHP 5 .............................................................................................. 17
1.2.2. Programación Orientada a Objetos (OOP) .............................................17
1.2.3. Métodos mágicos .............................................................................. 18
1.2.4. PEAR (PHP Extension and Application Repository) ..................................18
1.2.5. Mapeo de Objetos a Bases de datos (ORM) ...........................................19
1.2.6. Desarrollo rápido de aplicaciones (RAD) ...............................................20
1.2.7. YAML............................................................................................... 22
Capítulo 2. Explorando el interior de Symfony............................................... 24
2.1. El patrón MVC ........................................................................................ 24
2.1.1. Las capas de la arquitectura MVC ........................................................25
2.1.2. Separación en capas más allá del MVC .................................................29
2.1.3. La implementación del MVC que realiza Symfony ...................................32
2.1.4. Las clases que forman el núcleo de Symfony.........................................35
2.2. Organización del código ........................................................................... 35
2.2.1. Estructura del proyecto: Aplicaciones, Módulos y Acciones ......................35
2.2.2. Estructura del árbol de archivos ..........................................................37
2.3. Herramientas comunes ............................................................................ 41
2.3.1. Contenedores de parámetros ..............................................................41
2.3.2. Constantes ....................................................................................... 43
2.3.3. Carga automática de clases ................................................................43
Capítulo 3. Ejecutar aplicaciones Symfony .................................................... 45
3.1. Instalando el entorno de pruebas ..............................................................45
3.2. Instalando las librerías de Symfony ...........................................................47
3.2.1. Instalando Symfony con PEAR.............................................................48
3.2.2. Obtener Symfony mediante el repositorio SVN ......................................49
3.3. Crear una aplicación web ......................................................................... 49
3.3.1. Crear el Proyecto .............................................................................. 49
3.3.2. Crear la Aplicación............................................................................. 50
3.4. Configurar el servidor web ....................................................................... 51
3.4.1. Configurar los servidores virtuales .......................................................51
3.4.2. Configurar un servidor compartido.......................................................52
3.5. Resolución de problemas.......................................................................... 54
3.5.1. Problemas típicos .............................................................................. 54
3.5.2. Recursos relacionados con Symfony.....................................................55
3.6. Versionado del código fuente ....................................................................55
www.librosweb.es
3
Symfony, la guía definitiva
Capítulo 4. Introducción a la creación de páginas ......................................... 58
4.1. Crear el esqueleto del módulo...................................................................58
4.1.1. Añadir una página ............................................................................. 60
4.1.2. Transfiriendo información de la acción a la plantilla ................................63
4.2. Obteniendo información del usuario a través de formularios..........................63
4.3. Enlazando a otra acción ........................................................................... 65
4.4. Obteniendo información de la petición........................................................66
Capítulo 5. Configurar Symfony ..................................................................... 69
5.1. El sistema de configuración ...................................................................... 69
5.1.1. Sintaxis YAML y convenciones de Symfony ...........................................70
5.1.2. ¡Socorro, los archivos YAML han roto la aplicación! ................................73
5.2. Un vistazo general a los archivos de configuración .......................................74
5.2.1. Configuración del Proyecto .................................................................74
5.2.2. Configuración de la Aplicación .............................................................75
5.2.3. Configuración de los Módulos ..............................................................79
5.3. Entornos................................................................................................ 80
5.3.1. ¿Qué es un entorno?.......................................................................... 80
5.3.2. Configuration en cascada ...................................................................82
5.4. La cache de configuración ........................................................................ 84
5.5. Accediendo a la configuración desde la aplicación ........................................85
5.5.1. La clase sfConfig ............................................................................... 85
5.5.2. El archivo app.yml y la configuración propia de la aplicación ...................87
5.6. Trucos para los archivos de configuración...................................................87
5.6.1. Uso de constantes en los archivos de configuración YAML .......................88
5.6.2. Uso de programación en los archivos de configuración ...........................88
5.6.3. Utilizar tu propio archivo YAML............................................................89
Capítulo 6. El Controlador.............................................................................. 91
6.1. El Controlador Frontal.............................................................................. 91
6.1.1. El Trabajo del Controlador Frontal en Detalle ........................................91
6.1.2. El Controlador Frontal por defecto .......................................................92
6.1.3. Llamando a Otro Controlador Frontal para Cambiar el Entorno.................92
6.1.4. Archivos por Lotes............................................................................. 93
6.2. Acciones ................................................................................................ 94
6.2.1. La clase de la acción .......................................................................... 94
6.2.2. Sintaxis alternativa para las clases de las Acciones ................................96
6.2.3. Obteniendo Información en las Acciones...............................................96
6.2.4. Terminación de las Acciones ...............................................................97
6.2.5. Saltando a Otra Acción....................................................................... 99
6.2.6. Repitiendo Código para varias Acciones de un Modulo .......................... 101
6.3. Accediendo a la Petición......................................................................... 101
6.4. Sesiones de Usuario .............................................................................. 104
6.4.1. Accediendo a la Sesión de Usuario ..................................................... 104
www.librosweb.es
4
Symfony, la guía definitiva
6.4.2. Atributos Flash................................................................................ 105
6.4.3. Manejo de Sesiones ......................................................................... 106
6.5. Seguridad de la Acción .......................................................................... 107
6.5.1. Restricción de Acceso ...................................................................... 108
6.5.2. Otorgando Acceso ........................................................................... 109
6.5.3. Credenciales Complejas ................................................................... 111
6.6. Métodos de Validación y Manejo de Errores .............................................. 111
6.7. Filtros.................................................................................................. 113
6.
Comentarios de: Symfony, la guia definitiva (0)
No hay comentarios