Commencer par installer twig sur votre projet, si ce n’est pas fait avec cette commande :
composer require symfony/twig-bundle
Fichier : src/Controller/PersonnagesController.php
<?php
namespace App\Controller;
use App\Repository\PersonnagesRepository;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class PersonnagesController extends AbstractController
{
/**
* @Route("/personnages", name="personnages")
* @param PersonnagesRepository $personnagesRepository
* @return Response
*/
public function index(PersonnagesRepository $personnagesRepository): Response
{
$personnages = $personnagesRepository->findAll();
if (empty($personnages)) {
return new Response("No data found", Response::HTTP_NOT_FOUND,
['content-type' => 'text/plain']);
}
return $this->json($personnages);
}
}