Framework de desarrollo Symfony Rodrigo Miranda rmiranda@poodu.cl  http://www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP
Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramienta...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramienta...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramienta...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramienta...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramienta...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Librerías o...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Librerías o...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Adentrándonos en Symfony
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Qué es Symfony? </li></ul><ul><li>Framewok...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Qué es un Framework? </li></ul><ul><li>Fra...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Principal Característica? </li></ul><ul><l...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Característica de Symfony </li></ul><ul><l...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Tabla de Rendimiento </li></ul>ítems PHP F...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Curva Aprendizaje / Eficiencia </li></ul><...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Quiénes utilizan Symfony
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Requerimientos </li></ul><ul><li>Sistemas ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Quiénes utilizan Symfony </li></ul><ul><li...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Requerimientos </li></ul><ul><li>Servidor ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Requerimientos </li></ul><ul><li>Servidor ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Requerimientos </li></ul><ul><li>Lenguaje ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura </li></ul><ul><li>Symfony al igual q...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC </li></ul><ul><li>Modelo:  Repre...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC y Flujo de petición </li></ul>
Rodrigo Miranda Blog: www.rodrigomiranda.cl Implementación MVC Symfony
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>Modelo...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>Modelo...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>ORM (O...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>Vista:...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>Contro...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Flujo de Trabajo Symfony. </li></ul>
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba  Symfony
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba  Symfony <ul><li>Alternativa de Instalación </li...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba  Symfony <ul><li>Entorno de prueba:  </li></ul><...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba  Symfony <ul><li>Verificar entorno de prueba:  <...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba  Symfony <ul><li>Verificar entorno de prueba:  <...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba  Symfony <ul><li>Si todo ha ido bien, deberías v...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba  Symfony <ul><li>Para qué nos servirá el entorno...
Rodrigo Miranda Blog: www.rodrigomiranda.cl <ul><li>Alternativa de Instalación </li></ul><ul><li>2.  Instalación Symfony c...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación Symfony con PEAR <ul><li>Instalación Symfony con PEAR:  </li></ul>...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Finalmente, una vez añadido el canal, ya es posible instalar la última versión...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Para verificar que se ha instalado correctamente utilizando la alternativa PEA...
Rodrigo Miranda Blog: www.rodrigomiranda.cl <ul><li>Las librerías de instalación, se encuentran: </li></ul><ul><li>$php_di...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Las variables que acaban en _dir se definen en la configuración de PEAR. Para ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl <ul><li>Alternativa de Instalación </li></ul><ul><li>2.  Instalación mediante ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl El listado de las versiones lo puedes encontrar en la siguiente URL: http://sv...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación de Symfony mediante Subversión <ul><li>Si no tienes instalado Subv...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Recomendamos crear un directorio que pueda contener más de una versión de Symf...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Comprobando requerimientos de Sistema
Rodrigo Miranda Blog: www.rodrigomiranda.cl Comprobando requerimiento de Sistema Ingresar al directorio bin de la instalac...
Rodrigo Miranda Blog: www.rodrigomiranda.cl El comando de  symfony  -V, para el caso de la instalación por Subversión, lo ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo Symfony
Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo <ul><li>  </li></ul><ul><li>Si has utilizado PE...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo Recomendamos:  La tarea generate:project añade ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo Que contiene el script Symfony  Si editamos el ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo ProjectConfiguration.class.php:  Si editamos es...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo Si realizaste el cambio anterior (path o ruta) ...
Rodrigo Miranda Blog: www.rodrigomiranda.cl Preguntas?
Próxima SlideShare
Cargando en…5
×

Adentrándonos al Framework Symfony

6.537 visualizaciones

Publicado el

1ra Unidad de inducción a Symfony. Los primeros pasos, los relevantes para comenzar a desarrollar.

Publicado en: Tecnología
0 comentarios
8 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
6.537
En SlideShare
0
De insertados
0
Número de insertados
1.024
Acciones
Compartido
0
Descargas
5
Comentarios
0
Recomendaciones
8
Insertados 0
No insertados

No hay notas en la diapositiva.

Adentrándonos al Framework Symfony

  1. 1. Framework de desarrollo Symfony Rodrigo Miranda rmiranda@poodu.cl http://www.rodrigomiranda.cl
  2. 2. Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP
  3. 3. Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramientas a Instalar: </li></ul><ul><li>Sistema Operativo, para este caso Linux. </li></ul><ul><ul><ul><li>Linux </li></ul></ul></ul><ul><ul><ul><li>Windows </li></ul></ul></ul><ul><ul><ul><li>OS X </li></ul></ul></ul><ul><ul><ul><li>etc. </li></ul></ul></ul>
  4. 4. Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramientas a Instalar: </li></ul><ul><li>Servidor Web Apache 2.x o superior. </li></ul><ul><ul><ul><li>fedora, CentOS, RedHat: </li></ul></ul></ul><ul><ul><ul><li>Ubuntu </li></ul></ul></ul># yum install httpd # apt-get install apache2
  5. 5. Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramientas a Instalar: </li></ul><ul><li>Motor Base de Datos MySQL 5.x o superior </li></ul><ul><ul><ul><li>fedora, CentOS, RedHat: </li></ul></ul></ul><ul><ul><ul><li>Ubuntu </li></ul></ul></ul># yum install mysql mysql-server mysql-libs # apt-get install mysql-server mysql-client
  6. 6. Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramientas a Instalar: </li></ul><ul><li>Lenguaje PHP 5.2.4 o superior </li></ul><ul><ul><ul><li>fedora, CentOS, RedHat: </li></ul></ul></ul><ul><ul><ul><li>Ubuntu </li></ul></ul></ul># yum install php php-cli php-gd php-mysql php-pear # apt-get install php5 php5-cli php5-gd php5-mysql php php-pear
  7. 7. Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Herramientas a Instalar: </li></ul><ul><li>Instalación phpMyAdmin. </li></ul><ul><ul><ul><li>fedora, CentOS, RedHat </li></ul></ul></ul><ul><ul><ul><li>Ubuntu </li></ul></ul></ul># Descargar última versión del sitio: http://www.phpmyadmin.net y descomprimir en directorio web: /var/www/html (este comando no funciona ;-) ) # apt-get install phpmyadmin
  8. 8. Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Librerías o Extensiones: </li></ul><ul><li>PDO (PHP Data Objects): Permite acceder a distintas base de datos utilizando las mismas funciones, facilitando la portabilidad. </li></ul>
  9. 9. Rodrigo Miranda Blog: www.rodrigomiranda.cl Levantamiento Plataforma LAMP (Linux, Apache, MySQL y PHP) <ul><li>Librerías o Extensiones: </li></ul><ul><li>PHP-XML PHP-XMLRPC. </li></ul>
  10. 10. Rodrigo Miranda Blog: www.rodrigomiranda.cl Adentrándonos en Symfony
  11. 11. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Qué es Symfony? </li></ul><ul><li>Framewok para el desarrollo de aplicaciones web con PHP. </li></ul>
  12. 12. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Qué es un Framework? </li></ul><ul><li>Framewok es una estructura de soporte definida, mediante la cual otro proyecto de software puede ser organizado y desarrollado. </li></ul><ul><li>Entrega soporte de herramientas y extensiones y los une para el beneficio del desarrollador. </li></ul><ul><li>Propone una metodología de Desarrollo. </li></ul>
  13. 13. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Principal Característica? </li></ul><ul><li>Facilitan el desarrollo de software, permitiendo a los diseñadores y programadores pasar más tiempo identificando requerimientos y buscando eficiencia, que preocupados de los detalles de bajo nivel que hoy en día no se justifican en la gran mayoría de los proyectos Web. </li></ul><ul><li>Encapsula operaciones complejas en instrucciones sencillas. </li></ul>
  14. 14. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Característica de Symfony </li></ul><ul><li>Bastante tutoriales y documentación de talleres y casos prácticos. </li></ul><ul><li>Documentación traducida a muchos idiomas, por ende, la comunidad sigue creciendo de manera exponencial. </li></ul><ul><li>Mantenido por la interesante combinación comunidad + empresa (Comunidad desarrolladores + Sensio). </li></ul>
  15. 15. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Tabla de Rendimiento </li></ul>ítems PHP Frameworks Productividad Calidad programación Mantenimiento Rendimiento Aplicación
  16. 16. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Curva Aprendizaje / Eficiencia </li></ul><ul><li>Symfony tiene una curva de aprendizaje altísima. Pero eso no es malo, dado que su curva de eficiencia y producción es directamente proporcional. </li></ul>
  17. 17. Rodrigo Miranda Blog: www.rodrigomiranda.cl Quiénes utilizan Symfony
  18. 18. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Requerimientos </li></ul><ul><li>Sistemas Operativos: Linux, OS X, Windows, etc. </li></ul>
  19. 19. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Quiénes utilizan Symfony </li></ul><ul><li>Más de 200 millones de personas en todo el mundo utilizan aplicaciones construidas con Symfony. </li></ul><ul><li>Listado de aplicaciones: </li></ul><ul><li>http://trac.symfony-project.org/wiki/ApplicationsDevelopedWithSymfony </li></ul>
  20. 20. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Requerimientos </li></ul><ul><li>Servidor Web: Apache o IIS. </li></ul>
  21. 21. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Requerimientos </li></ul><ul><li>Servidor Base de Datos: MySQL, PostgreSQL, etc. </li></ul>
  22. 22. Rodrigo Miranda Blog: www.rodrigomiranda.cl Inducción Framework Symfony <ul><li>Requerimientos </li></ul><ul><li>Lenguaje Programación PHP 5.2.4 o superior. </li></ul>
  23. 23. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony
  24. 24. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura </li></ul><ul><li>Symfony al igual que otros Frameworks de Desarrollo, se basa en el diseño web a tres Capas MVC . </li></ul>
  25. 25. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC </li></ul><ul><li>Modelo: Representa la información con la que trabaja la aplicación, resolviendo la lógica de negocio y el acceso a los datos. </li></ul><ul><li>Vista: Transforma el modelo en una página web, encargándose de la presentación visual de los datos. </li></ul><ul><li>Controlador: Se encarga de procesar las peticiones del usuario, de decidir cual es la acción que se ejecutará a continuación de realizar los cambios en la vista y en el modelo. </li></ul>
  26. 26. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC y Flujo de petición </li></ul>
  27. 27. Rodrigo Miranda Blog: www.rodrigomiranda.cl Implementación MVC Symfony
  28. 28. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>Modelo: Se subdivide en la capa de acceso a los datos y en la capa de abstracción de la base de datos. De esta forma, las funciones que acceden a los datos no utilizan sentencias ni consultas que dependen de una base de datos, sino que utilizan otras funciones para realizar consultas. Así si se cambia de base de datos solamente es necesario actualizar la capa de abstracción. </li></ul>
  29. 29. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>Modelo: En la capa del modelo trabajamos junto a un componente muy importante, el llamado traductor. </li></ul>
  30. 30. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>ORM (Object-relational mapping) </li></ul><ul><li>Las bases de datos siguen una estructura relacional. PHP 5 y Symfony por el contrario son orientados a objetos. Por este motivo, para acceder a la base de datos como si fuera orientada a objetos, es necesario una interfaz que traduzca la lógica de los objetos a la lógica relacional (mapeo de objetos a base de datos). </li></ul>
  31. 31. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>Vista: La capa de presentación de los datos, puede ser objeto de subdivisión grafica ya que siempre en ellas hay zonas que se repiten, ejemplo: Header o Footer (pueden formar parte de layout). </li></ul>
  32. 32. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Arquitectura MVC Symfony </li></ul><ul><li>Controlador: Del controlador depende mucho trabajo, entre sus labores encontramos: </li></ul><ul><li>Manejo de las peticiones del usuario. </li></ul><ul><li>Manejo de la seguridad. </li></ul><ul><li>Cargar la configuración de la aplicación. </li></ul><ul><li>Ser el intermediario por donde pasan todas las conversaciones - desde y hacia - todas las otras capas. </li></ul>
  33. 33. Rodrigo Miranda Blog: www.rodrigomiranda.cl Observando a Symfony <ul><li>Flujo de Trabajo Symfony. </li></ul>
  34. 34. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba Symfony
  35. 35. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba Symfony <ul><li>Alternativa de Instalación </li></ul><ul><li>1. Entorno de prueba: </li></ul><ul><li>Es un proyecto vacío de Symfony que incluye librerías necesarias como: (Symfony, lime, Prototype con Scriptaculous, Doctrine y Propel con Phing). </li></ul>
  36. 36. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba Symfony <ul><li>Entorno de prueba: </li></ul><ul><li>Para instalar el entorno de pruebas, se debe descargar su archivo comprimido desde </li></ul><ul><li>http://www.symfony-project.org/get/sf_sandbox_1_2.tgz </li></ul><ul><li>A continuación, se descomprime su contenido en el directorio raíz del servidor web. </li></ul>
  37. 37. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba Symfony <ul><li>Verificar entorno de prueba: </li></ul><ul><li>Para comprobar que se ha realizado correctamente la instalación del entorno de pruebas ejecuta el primer comando de symfony </li></ul><ul><li>El resultado del comando debería ser parecido: </li></ul># symfony -V # symfony version x.x.x (/ruta/hasta/el/directorio/lib/dir/utilizado/por/el/entorno/de/pruebas)
  38. 38. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba Symfony <ul><li>Verificar entorno de prueba: </li></ul><ul><li>Lo siguiente es acceder al entorno de pruebas mediante la siguiente URL: </li></ul><ul><li>http://localhost/sf_sandbox/web/frontend_dev.php </li></ul>
  39. 39. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba Symfony <ul><li>Si todo ha ido bien, deberías ver: </li></ul>
  40. 40. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación entorno de prueba Symfony <ul><li>Para qué nos servirá el entorno de prueba… </li></ul><ul><li>El entorno de prueba está pensado para que se practique con Symfony en un servidor local, no para desarrollar aplicaciones complejas. </li></ul><ul><li>Nos servirá para conocer el esqueleto de este Framework antes de comenzar a desarrollar sobre él. </li></ul>
  41. 41. Rodrigo Miranda Blog: www.rodrigomiranda.cl <ul><li>Alternativa de Instalación </li></ul><ul><li>2. Instalación Symfony con PEAR: </li></ul><ul><li>El paquete PEAR de Symfony incluye las librerías propias de Symfony y todas sus dependencias. Además, también contiene un script que permite extender la línea de comandos. </li></ul>
  42. 42. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación Symfony con PEAR <ul><li>Instalación Symfony con PEAR: </li></ul><ul><li>Para instalar Symfony de esta manera, en primer lugar se debe añadir el canal Symfony PEAR: </li></ul><ul><li>Para comprobar librerías disponibles en ese canal: </li></ul># pear channel-discover pear.symfony-project.com # pear remote-list –c symfony
  43. 43. Rodrigo Miranda Blog: www.rodrigomiranda.cl Finalmente, una vez añadido el canal, ya es posible instalar la última versión estable: Instalación Symfony con PEAR # pear install symfony/symfony downloading symfony-x.x.x.tgz ... Starting to download symfony-1.x.x.tgz (2,700,635 bytes) ................................................................. ................................................................. .............done: 2,700,635 bytes install ok: channel://pear.symfony-project.com/symfony-x.x.x
  44. 44. Rodrigo Miranda Blog: www.rodrigomiranda.cl Para verificar que se ha instalado correctamente utilizando la alternativa PEAR: Instalación Symfony con PEAR # symfony –V symfony version x.x.x (/ruta/hasta/el/directorio/lib/de/symfony/en/pear)
  45. 45. Rodrigo Miranda Blog: www.rodrigomiranda.cl <ul><li>Las librerías de instalación, se encuentran: </li></ul><ul><li>$php_dir/symfony/ contiene las principales librerías. </li></ul><ul><li>$data_dir/symfony/ contiene los archivos web que utilizan por defecto los módulos de symfony. </li></ul><ul><li>$doc_dir/symfony/ contiene la documentación. </li></ul><ul><li>$test_dir/symfony/ contiene las pruebas unitarias y funcionales de Symfony. </li></ul>Instalación Symfony con PEAR
  46. 46. Rodrigo Miranda Blog: www.rodrigomiranda.cl Las variables que acaban en _dir se definen en la configuración de PEAR. Para ver sus valores puedes ejecutar el siguiente comando: Instalación Symfony con PEAR # pear config-show
  47. 47. Rodrigo Miranda Blog: www.rodrigomiranda.cl <ul><li>Alternativa de Instalación </li></ul><ul><li>2. Instalación mediante SVN (Subversión) </li></ul><ul><li>Esta opción es recomendada para desarrolladores más avanzados. Es el método con el que pueden obtener los últimos parches, pueden añadir sus propias características al framework y pueden colaborar con el proyecto Symfony. </li></ul>
  48. 48. Rodrigo Miranda Blog: www.rodrigomiranda.cl El listado de las versiones lo puedes encontrar en la siguiente URL: http://svn.symfony-project.com/tags/ El release a descargar para producción, debe considerar siempre la última versión ESTABLE. Instalación de Symfony mediante Subversión
  49. 49. Rodrigo Miranda Blog: www.rodrigomiranda.cl Instalación de Symfony mediante Subversión <ul><li>Si no tienes instalado Subversion, es hora de hacerlo . </li></ul><ul><ul><ul><li>fedora, CentOS, RedHat: </li></ul></ul></ul><ul><ul><ul><li>Ubuntu </li></ul></ul></ul># yum install subversion # apt-get install subversion
  50. 50. Rodrigo Miranda Blog: www.rodrigomiranda.cl Recomendamos crear un directorio que pueda contener más de una versión de Symfony. Este no debe ser accesible desde un navegador. Instalación de Symfony mediante Subversión # mkdir –p /versiones-symfony/symfonyx_x_x/ # cd /versiones-symfony/symfonyx_x_x # svn co http://svn.symfony-project.com/tags/RELEASE_x_x_x/ .
  51. 51. Rodrigo Miranda Blog: www.rodrigomiranda.cl Comprobando requerimientos de Sistema
  52. 52. Rodrigo Miranda Blog: www.rodrigomiranda.cl Comprobando requerimiento de Sistema Ingresar al directorio bin de la instalación Symfony: Ejecutar script check_configurarion: # cd /versiones-symfony/symfonyx_x_x/data/bin # php check_configuration.php
  53. 53. Rodrigo Miranda Blog: www.rodrigomiranda.cl El comando de symfony -V, para el caso de la instalación por Subversión, lo podremos ejecutar de la siguiente manera: o resultado: Instalación de Symfony mediante Subversión # php /versiones-symfony/symfonyx_x_x/data/bin/symfony –V # /versiones-symfony/symfonyx_x_x/data/bin/./symfony –V # symfony version x.x.x (/versiones-symfony/symfonyx_x_x/lib)
  54. 54. Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo Symfony
  55. 55. Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo <ul><li> </li></ul><ul><li>Si has utilizado PEAR: </li></ul><ul><li>Si has utilizado Subversión: </li></ul><ul><li>o </li></ul># symfony generate:project miproyecto # php /versiones-symfony/symfonyx_x_x/data/bin/symfony generate:project miproyecto # /versiones-symfony/symfonyx_x_x/data/bin/./symfony generate:project miproyecto # mkdir /directorio/web/miproyecto # cd /directorio/web/miproyecto
  56. 56. Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo Recomendamos: La tarea generate:project añade un script llamado symfony en el directorio raíz del proyecto. Este script es idéntico al comando symfony creado por PEAR, por lo que de ahora en adelante se puede seguir utilizando, acortando con eso las líneas de comandos. # cd /directorio/web/miproyecto # ./symfony -V
  57. 57. Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo Que contiene el script Symfony Si editamos el archivo symfony creado por la tarea generate:project. Encontramos la siguiente línea: # cd /directorio/web/miproyecto # vim symfony ……… require_once(dirname(__FILE__).’/config/ProjectConfiguration.class.php’); ……… ..
  58. 58. Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo ProjectConfiguration.class.php: Si editamos este archivo. Encontramos la siguiente línea que apunta a la instalación de Symfony. Por lo tanto, si alguna vez lo requieres, sólo debes cambiar esta ruta para que nuestro proyecto ocupe otra versión de symfony. # cd /directorio/web/miproyecto/config # vim ProjectConfiguration.class.php ……… require_once ‘ /versiones-symfony/symfonyx_x_x/ lib/autoload/sfCoreAutolad.class.php; ……… ..
  59. 59. Rodrigo Miranda Blog: www.rodrigomiranda.cl Creando un proyecto de Ejemplo Si realizaste el cambio anterior (path o ruta) para una nueva versión de Symfony, no olvides borrar la caché del proyecto, desde su raíz # symfony cc # cd /directorio/web/miproyecto
  60. 60. Rodrigo Miranda Blog: www.rodrigomiranda.cl Preguntas?

×