2013-05-30 4 views
0

페이지 매김을 위해 knp 페이징 기 번들을 사용하고 있습니다.mongodb에 대한 질의 문을 symfony2에서 knp paginator로 전달하는 방법

교리에 knp 페이징 기 사용을 알고 있습니다. 하지만 mongodb에서 나는 모른다.

다음은 knp 페이징기로 전달되는 doctrine ORM 쿼리에 대한 코드입니다.

$em = $this->get('doctrine.orm.entity_manager'); 
$dql = "SELECT a FROM AdwindBannerBundle:Banner a"; 
$query = $em->createQuery($dql); 
$pagination = $this->get('knp_paginator')->paginate($query,$page,10); 

동일한 방법으로 ODM (mongoDB)에 사용하고 싶습니다.

하지만 혼란스럽게도 OPC (mongodb)에서 paginator를 전달하는 데 사용해야하는 쿼리는 무엇입니까?

답변

1

어쩌면

$dm = $this->get('doctrine_mongodb')->getManager(); 
$qb = $dm->createQueryBuilder('AcmeDemoBundle:User'); 

$paginator = $this->get('knp_paginator'); 
$pagination = $paginator->paginate(
    $qb, 
    $this->get('request')->query->get('page', 1)/*page number*/, 
    10/*limit per page*/ 
);