Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/10/2012, 17:54
Avatar de Genetix
Genetix
 
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 9 meses
Puntos: 45
ZF2+ Doctrine2 +Zend\Paginator

Hola
Estaba probado esta combinación ZF2+ Doctrine2 +Zend\Paginator, pero hay algunas cosas que no están funcionando como se supone que debería ser.

Aquí les pego el Código
Código PHP:
Ver original
  1. use Zend\Mvc\Controller\AbstractActionController;
  2. use Doctrine\ORM\EntityManager;
  3. use Zend\View\Model\ViewModel;
  4.  
  5. use Doctrine\Common\Collections\ArrayCollection;
  6. use Doctrine\ORM\Tools\Pagination\Paginator as DoctrinePaginator;
  7. use DoctrineORMModule\Paginator\Adapter\DoctrinePaginator as PaginatorAdapter;
  8. use Zend\Paginator;
  9.  
  10.  
  11. class TestController extends AbstractActionController
  12. {
  13.  
  14.     protected $em;
  15.  
  16.     public function indexAction()
  17.     {
  18.         $entityManager = $this->getEntityManager();  
  19.        //$data = $this->getEntityManager()->createQuery('SELECT r FROM Data\Entity\Rrhh r'); // funciona
  20.        $data = $this->getEntityManager()->createQuery('SELECT r.id FROM Data\Entity\Rrhh r'); // No funciona
  21.  
  22.      $paginatorAdapter = new PaginatorAdapter(new DoctrinePaginator($data));
  23.      $paginator = new Paginator\Paginator($paginatorAdapter);
  24.      $paginator->setCurrentPageNumber(1);
  25.      $paginator->setItemCountPerPage(20);
  26.      
  27.      var_dump($paginator->getCurrentItems())
  28.  
  29.     }
  30. }

Si uso esto, funciona perfecto, pero me develve todos los campos de la entidad, lo cual no es muy optimo ya que solo deseo obtener solo un par de campos
Código PHP:
$data $this->getEntityManager()->createQuery('SELECT r FROM Data\Entity\Rrhh r'); 
pero si uso esto, no funciona, talvez haya una mejor manera y no me lo se
Código PHP:
  $data $this->getEntityManager()->createQuery('SELECT r.id FROM Data\Entity\Rrhh r'); // No funciona 
Este es el error que muestra
Cita:
Not all identifier properties can be found in the ResultSetMapping: id
Cita:
/var/www/env1/app/vendor/doctrine/orm/lib/Doctrine/ORM/Tools/Pagination/CountOutputWalker.php:117
Alguna Idea??
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com

Última edición por Genetix; 30/10/2012 a las 18:10