Home

Taller de Symfony2

image

Contents

1. Tener las siguientes opciones de php desactivadas short open tag magic_quotes_gpc register_globals y session autostart Elsoftware git de control de versiones 2 1 3 Doctrine Doctrine es un Object Relational Mapper para PHP Proporciona una capa de persisten cia para objetos en PHP y se situa entre nuestra aplicaci n y nuestra base de datos En el Taller de Symfony2 Cap tulo 2 Preparando nuestro sistema taller lo explicaremos con m s detalle pero ahora nos basta con saber que lo necesitamos Para usar Doctrine es necesario tener instalada los drivers PDO para PHP 2 1 4 Otras aplicaciones Se recomienda tambi n instalar phpmyadmin para administrar las bases de datos que creemos Google Chrome o Firefox con Firebug en su ltima versi n Netbeans como entorno de desarrollo si tenemos memoria suficiente netbeans la debora 2 2 Instalando el software b sico Primero vamos a proceder a descargar los paquetes que vamos a necesitar para poder desarrollar con symfony2 en nuestro equipo bash sudo apt get install apache2 php5 php5 cli php5 sqlite php5 mysql php5 intl php5 xmlrpc php apc phpmyadmin mysql server git En el proceso nos preguntara por una clave para el administrador root de mysql Luego nos la preguntara otra vez para instalar phpmyadmin ademas de una clave para la base de datos de phpmyadmin Podemos poner siempre la misma pero es importante que no la olvidemos o no podremos crear ninguna bas
2. funciona correctamente en los sistemas Windows y nix est ndares Independiente del sistema gestor de bases de datos Su capa de abstracci n y el uso de Propel permiten cambiar con facilidad de SGBD en cualquier fase del proyecto Utiliza programaci n orientada a objetos de ahi que sea imprescindible PHP5 Sencillo de usar en la mayor a de casos aunque es preferible para el desarrollo de grandes aplicaciones Web que para peque os proyectos Aunque utiliza MVC Modelo Vista Controlador tiene su propia forma de trabajo en este punto con variantes del MVC cl sico como la capa de abstracci n de base de datos el controlador frontal y las acciones Basado en la premisa de convenir en vez de configurar en la que el desarrollador s lo debe configurar aquello que no es convencional Taller de Symfony2 Cap tulo 1 Introducci n Sigue la mayor a de mejores pr cticas y patrones de dise o para la web Preparado para aplicaciones empresariales y adaptable a las pol ticas y arquitectu ras propias de cada empresa adem s de ser lo suficientemente estable como para desarrollar aplicaciones a largo plazo C digo f cil de leer que incluye comentarios de phpDocumentor y que permite un mantenimiento muy sencillo F cil de extender lo que permite su integraci n con las bibliotecas de otros fabri cantes Una potente l nea de comandos que facilitan generaci n de c digo lo cual contri buye a ahorrar tiempo
3. Taller de Symfony2 Sergio G mez sgomez CAP TULO 1 Introducci n Si quieres puedes saltarte este cap tulo e ir directamente al segundo d nde est explicado todo el proceso de instalaci n de la aplicaci n de ejemplo 1 1 Qu es Symfony2 Seg n la wikipedia http es wikipedia org wiki Symfony Symfony2 es un completo framework dise ado para optimizar el desarrollo de las aplicaciones web mediante algu nas de sus principales caracteristicas Para empezar separa la l gica de negocio la l gi ca de servidor y la presentaci n de la aplicaci n web Proporciona varias herramientas y clases encaminadas a reducir el tiempo de desarrollo de una aplicaci n web compleja Adem s automatiza las tareas m s comunes permitiendo al desarrollador dedicarse por completo a los aspectos espec ficos de cada aplicaci n El resultado de todas estas ventajas es que no se debe reinventar la rueda cada vez que se crea una nueva aplicaci n web Symfony est desarrollado completamente en PHP 5 3 Ha sido probado en numerosos proyectos reales y se utiliza en sitios web de comercio electr nico de primer nivel Sym fony es compatible con la mayor a de gestores de bases de datos como MySQL Post greSQL Oracle y Microsoft SQL Server Se puede ejecutar tanto en plataformas nix Unix Linux etc como en plataformas Windows 1 2 Caracter sticas F cil de instalar y configurar en la mayoria de plataformas y con la garant a de que
4. de trabajo 1 3 De qu va el taller Vamos a desarrollar desde el principio una aplicaci n muy sencilla para gestionar las inscripciones a una serie de actividades El taller repasar brevemente los conceptos de la arquitectura Modelo Vista Con trolador y como encajan los componentes de Symfony2 en ella Con esa breve introducci n pasaremos a la parte pr ctica que consiste en ir desarro llando la aplicaci n poco a poco CAP TULO 2 Prepa ra ndo nuestro sistema Aunque Symfony2 puede funcionar en cualquier plataforma que soporte LAMP http en wikipedia org wiki LAMP_ software_bundle vamos a centrar las explicacio nes en la ltima versi n de Ubuntu Si usas otro sistema u otra distribuci n deber s adap tar las instrucciones a las caracter sticas de tu equipo 2 1 Requisitos t cnicos Los requisitos para instalar Symfony2 en un entorno de desarrollo son 2 1 1 Obligatorios PHP en su versi n 5 3 2 o superior Soporte de sqlite3 json ctype Tener configurada la opci n date timezone en el archivo php ini 2 1 2 Opcionales Las siguientes opciones no son obligatorias pero son muy recomendables porque casi con seguridad van a ser utilizadas M dulo php xml instalado Librer a libxml versi n 2 6 21 o superior PHP tokenizer habilitado Funciones mbstring habilitadas e iconv habilitado En NIX soporte de POSIX M dulo intl con soporte ICU 4 Cach de c digo PHP como APC o XCODE
5. e de datos despues Bug del paquete php5 sqlite El paquete phps5 sqlite tiene un bug que os puede dar pro blemas aunque lo normal es que solo d un warning sin m s consecuencias Para arreglar lo ten is que borrar un archivo que est a adido de m s bash sudo rm etc php5 conf d sqlite ini Gracias a Nacho thedarkpal por reportarlo 2 2 1 Configurando PHP Ahora antes de poder empezar a descargar y utilizar symfony2 vamos a configurar algu nas opciones de PHP que son requisito indispensable para poder trabajar Para ello vamos a crear un archivo como root en etc php5 conf d llamado symfony ini bash sudo vim etc php5 conf d symfony ini Y lo editamos con el siguiente contenido Taller de Symfony2 Cap tulo 2 Preparando nuestro sistema fichero symfony ini date timezone Europe Madrid short_open_tag 0ff magic_quotes_gpc 0ff register_globals 0ff session autostart 0ff Ahora si queremos podemos reiniciar apache2 para que relea la configuraci n pero lo va mos a hacer de todas maneras m s adelante 2 2 2 Instalando la aplicaci n Actividades Ya podemos comenzar a instalar la aplicaci n de ejemplo que vamos a usar para el taller Para ello vamos a usar la herramienta git que instalamos en uno de los pasos anteriores El ltimo paso el de instalaci n de vendors tardar un poco porque tiene que descargarse bastante software Si ten is una buena conexi n mejor mkdir HOME Sites cd HOME Sites gi
6. ivos para que apa che2 acceda a ellos Por otra parte tiene la desventaja de que todo se ejecuta con nuestros mismos permisos as que cuidado con dejar esta configuraci n en entornos en produc ci n o en equipos conectados a Internet El siguiente paso es agregar el directorio Sites que hemos creado como un repositorio de proyectos web Para eso editamos como root el archivo etc apache2 sites available default lt VirtualHost x 80 gt ServerAdmin webmaster localhost UseCanonicalName Off VirtualDocumentRoot home sergio Sites 1 web lt Directory home sergio Sites x web gt AllowOverride All lt Directory gt DocumentRoot var www El resto igual Y ya por ltimo antes de iniciar apache2 de nuevo necesitamos cargar dos m dulos que no vienen activados por defecto bash sudo a2enmod vhost_alias bash sudo a2enmod rewrite bash sudo service apache2 start Correcci n Anteriormente pon a redirect El nombre correcto del m dulo es rewrite Gracias a thedarkpal por los comentarios La configuraci n de apache que acabamos de realizar nos permite crear todos los host vir tuales que queramos en nuestro directorio Sites Solo necesitamos una forma de que los navegadores encuentren la IP de esos hosts virtuales Para ellos vamos a configurar el ar chivo hosts del sistema para a adir nuestra web bash sudo vi etc hosts Y a adimos un nuevo host Cada vez que queramos a adir un nuevo sitio tendremos
7. least 4 OK Checking that a PHP accelerator is installed OK Checking that php ini has short_open_tag set to off OK Checking that php ini has magic_quotes_gpc set to off OK Checking that php ini has register_globals set to off OK Checking that php ini has session auto_start set to off xx Optional checks Doctrine xx OK Checking that PDO is installed OK Checking that PDO has some drivers installed mysql sqlite 2 2 3 Configurar Apache Ya tenemos casi listo nuestra aplicaci n Ahora nos queda permitir que sea accesible des de un navegador web Para ello vamos a configurar apache2 para un entorno de DESARROLLO Que quede bien claro que esta configuraci n no esta recomendada para un sistema en producci n Simplemente esta pensada para facilitar el trabajo Detenemos el servicio de apache con sudo service apache2 stop Y ahora vamos a edi tar el archivo etc apache2 envvars no olvid is hacerlo como root Deb is cambiar las variables APACHE_RUN_USER y APACHE_RUN_GROUP para que tengan vuestro nombre de usuario bash sudo service apache2 stop bash sudo vi etc apache2 envvars Y ahora buscamos estas l neas y las cambiamos con nuestro nombre de usuario APACHE_RUN_USER sergio APACHE_RUN_GROUP sergio Taller de Symfony2 Cap tulo 2 Preparando nuestro sistema Esta configuraci n no es obligatoria pero tiene la ventaja de que si trabajamos en nuestra cuenta de usuario no tendremos que ir cambiando permisos a los arch
8. que hacer lo mismo Taller de Symfony2 Cap tulo 2 Preparando nuestro sistema 127 0 0 1 localhost A adimos la siguiente l nea 127 0 0 1 actividades actividades local The following lines are desirable for IPv6 capable hosts ip6 localhost ip6 loopback fe00 0 ip6 localnet ff00 0 ip6 mcastprefix ff02 1 ip6 allnodes ff02 2 ip6 allrouters Y ya podemos acceder a nuestra web de configuraci n de symfony2 a trav s de la direc ci n http actividades local app_dev php _configurator 2 2 4 Configurar MySQL La p gina que nos acaba de aparecer es la de configuraci n de la base de datos de nuestra aplicaci n Antes de continuar debemos crear una Podemos hacerlo a trav s de la aplica ci n phpmyadmin que ya hemos instalado o a trav s de linea de rdenes Ya que estamos metidos en la din mica de hacerlo todo por consola continuemos asi Recordad que os pe dir la contrase a que us steis en la instalaci n bash mysqladmin u root p create actividades Enter password bash mysql u root p mysql Enter password mysql gt grant all privileges on actividades to sfactividades e localhost identified by clavesecreta Query OK 0 rows affected 0 00 sec mysql gt flush privileges Query OK 0 rows affected 0 00 sec mysql gt quit Bye Y ya tenemos preparada nuestra base de datos Solo necesitamos indicar en la web los si guientes datos Como nombre Name de la base de datos acti
9. t clone https bitbucket org perseo actividades git cd actividades cp app config parameters ini orig app config parameters ini php bin vendors install Si hemos seguido los pasos correctamente podemos ya comprobar que todo funciona co rrectamente bash cd HOME Sites actividades bash php app check php kkxkkxkkkkkkkkkkkkkkkkkkkkkkkkkkkxk Symfony requirements check x kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk xx Mandatory requirements xx OK Checking that PHP version is at least 5 3 2 OK Checking that the date timezone setting is set OK Checking that app cache directory is writable OK Checking that the app logs directory is writable OK Checking that the json_encode is available OK Checking that the SQLite3 or PDO SQLite extension is available OK Checking that the session_start is available Taller de Symfony2 Cap tulo 2 Preparando nuestro sistema OK Checking that ctype alpha is available OK Checking that token_get_all is available OK Checking that APC version is at least 3 0 17 xx Optional checks xx OK Checking that the PHP XML module is installed OK Checking that the token_get_all function is available OK Checking that the mb_strlen function is available OK Checking that the iconv function is available OK Checking that the utf8 decode is available OK Checking that the posix_isatty is available OK Checking that the intl extension is available OK Checking that the intl ICU version is at
10. vidades Como usuario User sfactividades 10 Taller de Symfony2 Cap tulo 2 Preparando nuestro sistema Como contrase a Password clavesecreta o mejor a n la clave que hay is puesto que no sea esta claro Y le damosa Next step dos veces hasta que nos diga que nuestra distribuci n est con figurada 2 3 Todo listo Comencemos Ya solo nos queda cargar la base de datos con las tablas y los datos Nada m s f cil Nos va mos al directorio de nuestra aplicaci n y ejecutamos lo siguiente bash cd HOME Sites actividades bash php app console doctrine schema create bash php app console doctrine fixtures load Y listo Ya podemos ver nuestra web Para eso solo tenemos que cargar la direcci n del en torno de desarrollo http actividades local app_dev php Hay ya usuarios dados de alta El de administrador se llama admin y la contrase a es admin tambi n La aplicaci n difiere de la del Consejo en que sta permite crear usua rios mientras que la nuestra no ya que usamos los de la Universidad A n queda mucho por ver pero eso lo dejamos para el taller 2 4 One last thing Os recomendamos tambi n que si ven s con los port tiles lo hag is con Google Chrome instalado Tambi n os recomendamos que veng is con Netbeans para PHP ya que por el momento este ltimo es el nico IDE que soporta symfony2 Los podr is encontrar en sus web oficiales 11

Download Pdf Manuals

image

Related Search

Related Contents

施 工 要 領 書 - フジクリーン工業株式会社  Installation and Administration Manual  mp2013 - Mairie d`Aix-en  EC9852 Service Manual  User`s manual SynJ SB67148 DECT 6.0 4-line - Vtp    Electrolux GAS ELEVATED COOKERS User's Manual  MANUAL DO UTILIZADOR  400 Series - HellermannTyton  JF/JTA Series Balanza de Precisión  

Copyright © All rights reserved.
Failed to retrieve file