La variable $liste_posts retourne 4 éléments donc je devrai avoir 2 pages avec 2 éléments par page.
Voici ce que j'obtiens quand j'affiche la variable $posts :
Problème j'obtiens une pagination de 4 pages (au lieu de 2 page). Sur les 2 première page j'ai bien mes 2 éléments et sur la 3 ieme et 4 ieme page je n'ai aucun élément.
Pourquoi est-ce que le système me rajoute 2 pages alors que je suis censé en avoir 2 au total ?
Je ne sais pas ce que te renvoie ta méthode findTrending mais si c'est le résultat ça n'est pas bon. Le paginator doit avoir en premier argument un query.
Oui oui je sais ma requête renvoie bien une Query, d'ailleurs vous pouvez voir sur l'image de mon premier message que "items" contient bien bien mes 2 posts de la première page.
Je pense que cela vient de ta requête elle-même car tu rajoutes select o. Essaies de faire un var_dump de liste_posts et donne nous le résultats, je ne serai pas surprise de voir un count = 7.
Comme tu as une jointure entre p et opinions lorsque tu vas chercher p tu auras aussi o.
Tiens nous au courant.
" Celui qui aime à apprendre est bien près du savoir " Confucius
An exception occurred while executing 'SELECT DISTINCT p0_.id AS id_0 FROM post p0_ LEFT JOIN opinion o1_ ON p0_.id = o1_.post_id WHERE p0_.private = ? ORDER BY count(o1_.id) DESC LIMIT 2' with params [0]:
SQLSTATE[HY000]: General error: 3029 Expression #1 of ORDER BY contains aggregate function and applies to the result of a non-aggregated query
On ne peut pas faire ça, car il doit y avoir un group by pour faire le orderby
La ça ne fonctionne pas du tout, la pagination affiche 6 pages alors qu'a partir de la page 4 il n'y a plus rien.
Les posts retournés ne sont pas les bons, et le tri est mal fait.
J'explique la situation :
j'ai un Post qui peut avoir plusieurs Opinion (ManyToOne)
Je veux afficher sur ma page la liste des posts qui ont des Opinions et afficher les posts par ordre des posts avec le plus d'opinions. Et j'affiche également sur chaque post les opinions qu'il contient.
Pour faire ceci c'est cette requête qui me renvoi le bon résultat :
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
" Celui qui aime à apprendre est bien près du savoir " Confucius
" Celui qui aime à apprendre est bien près du savoir " Confucius
Freelance développeur Symfony
Freelance développeur Symfony
Freelance développeur Symfony
Freelance développeur Symfony
Freelance développeur Symfony
Freelance développeur Symfony
" Celui qui aime à apprendre est bien près du savoir " Confucius
" Celui qui aime à apprendre est bien près du savoir " Confucius
" Celui qui aime à apprendre est bien près du savoir " Confucius
" Celui qui aime à apprendre est bien près du savoir " Confucius