Creación manual de controladores y rutas en Symfony

Clase 3 de 20Curso de Symfony

Resumen

Comprender cómo Symfony responde a una solicitud web es fundamental para aprovechar su flexibilidad y robustez. En este índice educativo, te guiaré por las etapas principales del ciclo de vida de una solicitud HTTP en Symfony, ilustrando técnicas clave y recomendaciones prácticas según el proceso mostrado paso a paso.

¿Cómo inicia y se configura un proyecto Symfony básico?

Para arrancar el entorno de desarrollo, necesitas el terminal y comandos esenciales. Inicia el servidor con symfony serve, luego dirige tu navegador a la URL 127.0.0.1:8000. Si el home no está configurado, Symfony mostrará un mensaje que invita a preparar esa parte del proyecto. Se sugiere crear un nuevo controlador en la ruta src/controller llamado PageController.php y asegurarte de que el namespace coincida con la configuración de Composer para app.

¿Cómo se define un controlador y una ruta en Symfony?

  • Define la clase del controlador, por ejemplo, PageController.
  • Implementa el método index, generalmente usado para gestionar la página principal.
  • Configura la ruta de acceso utilizando anotaciones o configuradores, asignando la acción raíz / y nombrándola, por ejemplo, "Home".
  • Es fundamental que el método retorne un objeto de tipo Response; importar correctamente la clase es clave.
  • Al iniciar, el método puede devolver simplemente un texto, pero lo más habitual es que renderice una vista.

¿Cómo se utiliza el motor de plantillas Twig para renderizar vistas?

Una vez que quieres retornar vistas y no sólo texto, necesitas instalar el motor de plantillas Twig con el comando composer require twig. Esto habilitará la carpeta de plantillas y permitirá crear archivos como home.html.twig en una carpeta de páginas.

  • Utiliza el método this->render() en el controlador para renderizar la plantilla.
  • Puedes pasar variables a la vista como un título.
  • Extiende las plantillas de una base (base.html.twig) para reutilizar bloques como title o body.
  • Para mostrar el contenido de una variable en Twig, utiliza la sintaxis {{ variable }}.

¿Cómo se instala y usa la barra de depuración en Symfony?

Recomiendan instalar la herramienta de depuración con composer require debug. Al hacerlo y actualizar el navegador, aparecerá una barra informativa que indica:

  • Estado de la respuesta HTTP (por ejemplo, 200).
  • Nombre del controlador y método ejecutados.
  • Nombre de la ruta accesada.
  • Versiones de Symfony y PHP en uso.
  • Acceso a detalles sobre la solicitud, respuesta y rutas utilizadas.
  • Listado de vistas cargadas y recursos utilizados.

Esta barra es vital para revisar y entender en detalle los elementos y el rendimiento de tu proyecto.

¿Cómo practicar la creación de nuevas páginas y el uso de la depuración?

El reto práctico consiste en desarrollar una nueva página, como la de "Acerca de", y utilizar la barra de depuración para seguir todo el proceso de respuesta, desde la solicitud hasta la renderización de la nueva vista. Comentar tus descubrimientos puede aportar mucho al aprendizaje colectivo.