quinta-feira, 2 de junho de 2011

Cs_Table Parte 1 - Doctrine Query + Zend Paginator


Apesar de muito simples, este pequeno código é bem poderoso. Ele abre as portas para as próximas partes neste projeto. De uma olhada no no exemplo de implementação a baixo e se achar útil é só baixar pelo github e sair usando.



Este é um exemplo de como utilizar este Adapter.

<?php
$schedulesQuery = Doctrine_Query::create()
                     ->select()
                     ->from('Schedule');

$adapter = new Cs_Paginator_Adapter_DoctrineQuery($schedulesQuery);
$paginator = new Zend_Paginator($adapter);
$this->view->schedules = $paginator;

O resto segue exatamente o funcionamento do Zend_Paginator. Internamente o Adapter utiliza Doctrine Pager o que faz com que o funcionamento do Zend_Paginator seja ótimo, buscando no banco apenas a pagina corrente.

Esse é o primeiro componente que fará parte de algo maior, apesar de ser completamente funcional sozinho. As outras partes do Cs_Table eu vou postando com o tempo.

Onde baixar?