Cómo iniciar un proyecto en symfony - Greetik Soluciones - Consultoría TIC Extremadura
symfony, apuntes2021-06-10 10:26:58Greetik Soluciones SL

Cómo iniciar un proyecto en symfony

Primero de todo es necesario descargar el paquete symfony desde su propia página oficial symfony.com/download, así como composer desde getcomposer.org. Una vez descargados e instalados, podemos proceder con el siguiente paso.

Para crear un proyecto de symfony, abrimos la consola de windows o el terminal de Visual Studio Code, y desde la carpeta de c:\xampp\htdocs (lo hacemos desde aquí para poder utilizar el servidor local xampp) escribimos lo siguiente

c:\xampp\htdocs> symfony new nombreproyecto --full

Con esto se habrá creado una carpeta nueva dentro de htdocs con el nombre del proyecto que le hemos dado. Accedemos a ella para instalar el maker bundle y las anotaciones de doctrine:

c:\xampp\htdocs\nombreproyecto> composer require symfony/maker-bundle --dev
c:\xampp\htdocs\nombreproyecto> composer require doctrine/annotations

Para arrancar el servidor web, basta on escribir lo siguiente:

c:\xampp\htdocs\nombreproyecto> symfony server:start

Ahora podemos ver el proyecto en la url https://127.0.0.1:8000, o bien en localhost/nombreproyecto/public

Para arrancar el servidor MySQL simplemente abrimos xampp y lo activamos pulsando el botón correspondiente.


Empezamos creando un nuevo controlador, haciendo referencia a maker-bundle:

c:\xampp\htdocs\nombreproyecto> php bin/console make:controller

Después de ejecutar este comando nos pregunta el nombre del controlador, por ejemplo "TareaController".

PS C:\xampp\htdocs\curso_openwebinars> php bin/console make:controller
Choose a name for your controller class (e.g. VictoriousGnomeController):
 > TareaController
 created: src/Controller/TareaController.php
 created: templates/tarea/index.html.twig
   Success! 

La pantalla del terminal nos avisa de que se ha creado el controlador y una plantilla de twig, que podemos ver en las carpetas correspondientes que nos muestra el aviso.

Antes de poder visualizar lo que hemos creado hasta el momento necesitamos crear y conectar una nueva base de datos. Para ello creamos un nuevo archivo o duplicamos el .env, lo guardamos como .env.local y dejamos las siguientes líneas, donde pondremos el nombre de la base de datos(curso_openwebinars), el usuario (root) y la contraseña("").

###> doctrine/doctrine-bundle ###
#DATABASE_URL="mysql://db_user:db_password@127.0.0.1:3306/db_name?serverVersion=5.7"
DATABASE_URL="mysql://root:@127.0.0.1:3306/curso_openwebinars?serverVersion=5.7"
###< doctrine/doctrine-bundle ###

Ahora escribimos en la terminal la siguiente instrucción de doctrine, que crea la base de datos que hemos definido:

c:\xampp\htdocs\nombreproyecto> php bin/console doctrine:database:create

Ahora podemos abrir el navegador y acceder a la dirección que hemos creado anteriormente 127.0.0.1:8000/tarea, donde vemos publicada la plantilla de twig.