Bonjour à tous,

je suis confronté à un problème somme toute assez simple mais pour lequel je ne trouve aucune information claire à partir de la doc Symfony, Doctrine ou Twig. Je cherche à afficher les produits d'un restaurant triés par leur catégorie, ma table "Produit" possédant donc des clés étrangères avec les tables "Restaurant" et "Catégorie". Mon contrôleur est le suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
/**
     * Page permettant d'afficher les menus d'un restaurant
     * @Route("/menu_restaurant/{id<\d+>}", name="index_menu")
     * @param Request $request
     * @param Restaurant $restaurant
     * @return \Symfony\Component\HttpFoundation\Response
     */
    public function menuRestaurants(Request $request, Restaurant $restaurant)
    {
        $repository_produits = $this->getDoctrine()
            ->getRepository(Produit::class);
 
 
        $entrees = $repository_produits->findByCategory(array('p.category.id' => 1));
        $menus = $repository_produits->findByCategory(array('p.category.id' => 2));
        $desserts = $repository_produits->findByCategory(array('p.category.id' => 3));
        $boissons = $repository_produits->findByCategory(array('p.category.id' => 4));
 
return $this->render('front/MenuRestaurants.html.twig', [
            'restaurant' => $restaurant,
            'entrees' => $entrees,
            'menus' => $menus,
            'desserts' => $desserts,
            'boissons' => $boissons,
        ]);
    }
Le problème avec ce code, c'est qu'il m'affiche tous les produits d'une catégorie sans tenir compte du restaurant auxquels ils appartiennent (qui se trouve dans l'URL de ma page). Je voudrais par ex pouvoir boucler sur tous mes produits catégorisés "entrees" depuis la vue Twig avec cette ligne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
{% for produit in restaurant.entrees %}
mais ma table restaurant ne contient pas autre chose que des produits donc cela m'affiche une erreur. Suis-je obligé de créer une fonction contenant une requête à 2 jointures dans mon ProduitRepository? Ou bien puis-je tirer profit du fait que l'id du restaurant dont j'affiche les produits est automatiquement récupéré par Symfony grâce à sa présence dans le paramètre de Route, ce qui serait plus simple encore? Si oui comment faire?

Merci d'avance !