[Symfony 6] Récuperration du dernier message de chaque sujets

Le problème exposé dans ce sujet a été résolu.

Bonjour,

j’essaie de récupérer le dernier message de chaque topic dans symfony. Le hic c’est que j’y arrive pas… je récupère uniquement le dernier message tout court. J’ai essayer ça :

$post = $repositoryPost->createQueryBuilder('p')
         ->where('p.topic_id = :topic_id')
         ->setParameter('topic_id', $topic_id)
         ->orderBy('p.updateAt', 'DESC')
         ->setMaxResults(1)
         ->getQuery()
         ->getOneOrNullResult();

mais ça n’a pas l’air de fonctionner … Je suis un peu perdu je vous avoue car de ce que j’ai compris de la logique de symfony, il n’est pas nécessaire de faire une boucle directement dans le controller. On passe plus par une condition dans le template du style :

{% if post.topic is same as(topic) %}
le dernier message
{% endif %}
+0 -0

J’ai fini par trouver la solution 🙂

je suis en effet passer par une boucle, j’ai aussi créer une fonction dans mon repository qui va chercher à récupérer le dernier message en lui passant en paramètre le topic en question. Tout tourne au petit oignons 😁

Concernant la méthode plus puissante, j’ai effectivement utiliser le groupBy pour y avoir qu’une seule requête ! :)

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte