我有一个非常烦人的分页问题,这是我的存储库代码:
public function listeSujetsAdmin($forum, $user, $page){
$builder = $this->createQueryBuilder('s');
$builder
->andWhere($builder->expr()->eq('s.forum', ':forum'))
->setParameter("forum", $forum->getId())
->addSelect('c')
->leftJoin('s.commentaires', 'c')
->orderBy('c.dateCreation', 'DESC')
->addSelect('l')
->leftJoin('s.lectures', 'l', Expr\Join::WITH, $builder->expr()->eq('l.user', ':user'))
->setParameter('user', $user->getId())
->setFirstResult( Sujet::MAX_PAR_PAGE * ($page-1) )
->setMaxResults( Sujet::MAX_PAR_PAGE );
return new Paginator($builder);
}
如果我保留“ - > orderBy('c.dateCreation','DESC')”,则学说认为每个评论(c)都必须计算在我想要计算主题的位置。
这实际上是剖析器在这里显示的内容:
谢谢大家!