public function getArticlesForPlaylist($publication, $playlistId) { $em = $this->getEntityManager(); $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')->createQueryBuilder('a')->select('a', 'ap')->where('ap.id = :playlistId')->join('a.playlists', 'ap')->setParameter('playlistId', $playlistId); $countQueryBuilder = $em->getRepository('Newscoop\\Entity\\Article')->createQueryBuilder('a')->select('count(a)')->where('ap.id = :playlistId')->join('a.playlists', 'ap')->setParameter('playlistId', $playlistId); $articlesCount = $countQueryBuilder->getQuery()->getSingleScalarResult(); $query = $queryBuilder->getQuery(); $query->setHint('knp_paginator.count', $articlesCount); return $query; }