Al crear una nueva página utilizando «php bin/console make:controller –no-template» se realiza una serie de pasos:
- Crea un controlador: una clase llama SaludoController
- Crea una ruta : en nuestro caso /saludo la cual a sido generada a través de anotaciones en el controlador.
# ruta /src/Controller/SaludoController.php <?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\Routing\Annotation\Route; class SaludoController extends AbstractController { /** * @Route("/saludo", name="saludo") */ public function index() { return $this->json([ 'message' => 'Welcome to your new controller!', 'path' => 'src/Controller/SaludoController.php', ]); } }
Como se conforma del controlador:
- Linea 5: la palabra clave use importa la clase llamada AbstractController la cual proporciona métodos de ayuda que describiremos mas adelante.
- Linea 6: la use palabra clave use importa la clase Route, la cual nos permite definir rutas o URL amigables a través de anotaciones.
- Linea 8: la clase SaludoController hereda los métodos de la clase AbstractController.
- Linea 10 a 12: define una ruta /saludo y un nombre que identifica o describe la ruta dentro de symfony, debe importar la clase Route.
- Linea 13: método controlador index
- Linea 15: método de la clase AbstracController que retorna una respuesta en formato JSON.
Intenta modificar la ruta y accede a través del navegador Ejemplo:
http://localhost:8000/minuevaruta