2016-06-17 7 views
1

Ich bin Form Suche wie folgt erstellen:Paginate Ergebnisse Whit KipPaginatorBundle scheitern

wenn ich die Suche ausführen, es zeigt mir die erste Seite mit 10 Elementen, aber wenn ich auf 2 Seite klicken, zeigt es mir die ganze Elemente meiner Datenbank ohne Berücksichtigung meiner Kriteriensuche. Ich verstehe nicht

class FrontController extends Controller 
{ 
     /** 
     * @Route("/", name="front_homepage") 
     */ 
     public function indexAction(){ 

      $form = $this->createForm(SearchType::class); 

      return $this->render('FrontBundle::layout.html.twig', array(
       'form' => $form->createView(), 
      )); 
     } 

} 


class SearchController extends Controller 
{ 
    /** 
    * @param Request $request 
    * @Route("/search/form", name="front_search_form") 
    */ 
    public function searchOffreAction(Request $request) 
    { 
     $em = $this->getDoctrine()->getManager(); 

     $form = $this->createForm(SearchType::class); 

     $form->handleRequest($request); 

     if($form->isSubmitted()) { 

      $entity = $em->getRepository('CoreBundle:Foo')->findByCritere($form->getData()); 

      /** @var Paginator $paginator */ 
      $paginator = $this->get('knp_paginator'); 
      $result = $paginator->paginate(
       $entity, 
       $request->query->getInt('page', 1), 
       10 
      ); 

      return $this->render('FrontBundle:Search:offre.html.twig', ['offres' => $result]); 

     } 

     return $this->createNotFoundException(); 
    } 

} 

danke Ihnen allen,

Antwort

1

Ich denke, das Problem ist, Ihre $entity Bedürfnisse eine Abfrage kein Ergebnis.

Versuchen Sie stattdessen:

$em = $this->getDoctrine()->getManager(); 
$dql = "SELECT f FROM CoreBundle:Foo f"; 
$query = $em->createQuery($dql); 

/** @var Paginator $paginator */ 
$paginator = $this->get('knp_paginator'); 
$result = $paginator->paginate(
    $query, 
    $request->query->getInt('page', 1), 
    10 
); 

Nicht sicher, ob es funktionieren wird, aber versuchen Sie es.

+0

Vielen Dank es funktioniert Sie haben mein Leben gerettet ... genießen – Darkness007

+0

Froh, zu helfen! Wenn Sie weitere Hilfe benötigen, können Sie weitere Fragen stellen. –