2012-12-20 5 views
5

Ciao, ho una pagina con una tabella con un elenco di elementi (index.html.twig.). Uso il pacchetto Paginator KNP per impaginare il risultato. Ora voglio implementare qualche tipo di filtro in questa pagina per filtrare il risultato della tabella. Sto usando AJAX per fare questo, quindi creo un'altra vista (grupos.html.twig) con la tabella e l'impaginatore all'interno per rendere il risultato della query. ecco il codice di controllo:Filtro ajax Symfony 2.1 con pacchetto Paginator KNP

public function filtrarGrupoPorLetraAction(){ 
if ($this->getRequest()->isXmlHttpRequest()) { 
    $em = $this->getDoctrine()->getManager(); 
    $letra = $this->getRequest()->get('letra'); 
    $entities = $em->getRepository('GrupoBundle:Grupo')->filtrar($letra); 

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

    return $this->render('GrupoBundle:Grupo:grupos.html.twig', compact('pagination')); 
} 
} 

ma questo codice rendono una nuova pagina e voglio passare il risultato a index.html.twig per rendere un div.

Come posso fare questo?

risposta

-1

se avete solo bisogno di una risposta JSON, utilizzare il codice qui sotto

// create a JSON-response with a 200 status code 
$response = new Response(json_encode($yourData)); 
$response->headers->set('Content-Type', 'application/json'); 

return $response; 

se avete bisogno di rendere aa modello

return $this->renderView('YourTemplateFile', $yourParams); 

speranza che questo ha aiutato

0

È sufficiente aggiungere i tuoi dati dei risultati a il tuo div

+0

forse aggiungi un esempio di codice? – i3arnon