Crear un proyecto en Symfony2

Vamos a crear un proyecto en Symfony2 en el que podremos ver el código que enseñamos por aquí funcionando y así se podrá descargar y probar. Aprovechando esto vamos a hacer un repaso rápido por los pasos a seguir. En la documentación oficial se puede ver todo esto de forma extendida.

Brevemente los pasos que hemos seguido han sido, el primero será descargar Symfony2 con Composer::

  • Darle los permisos adecuados (crear los directorios app/logs y app/cache)
  • En nuestro caso crear un virtual host que apunte donde lo hemos descargado
  • Acceder a la aplicación por el navegador: http://showmethecode.local/app_dev.php, por ejemplo, para comprobar si todo ha ido bien, solucionar algún problema si lo hay.
  • Entrar a Configure para indicarle los parámetros que luego se escribirán en el parameters.yml, especialmente la conexión con la base de datos (si la hay).

Con estos sencillos pasos tenemos la aplicación configurada y en marcha.

Nuestros cambios

Hemos quitamos el AcmeDemoBundle que viene por defecto (guardando la parte que permite mostrar el código que se está ejecutando) y agregamos nuestro bundle.

Por otra parte añadimos Twitter Bootstrap descargado mediante Initializr y usamos una plantilla de Bootswatch (Responsive).

Finalmente hemos agregado la extensión de Twig que venía en el AcmeDemoBundle para ver el código del controlador y del template que se está ejecutando y hemos añadido un enlace al código de Github del controlador y del template.

Cómo la idea del proyecto es que se pueda probar fácilmente, vamos a usar de momento sqlite (aún no la usamos), por lo que configuramos la conexión en el config.yml:

Y el resultado es este:

http://sf2.showmethecode.es

 

Y el código está disponible en:

https://github.com/showmethecodeteam/showmethecode

Si alguien quiere probarlo en su local, sólo tendrá que clonarlo, lanzar composer install, crear los directorio app/cache y app/log, configurar los permisos y configurar su apache o el servidor que use.

Actualización: Como hemos ido añadiendo ejemplos, una vez en marcha se deben lanzar los comandos para cargar los fixtures o directamente lanzar el script drop_and_load_database.sh.