Foros del Web » Programando para Internet » PHP » Zend »

ZF2+ Doctrine2 +Zend\Paginator

Estas en el tema de ZF2+ Doctrine2 +Zend\Paginator en el foro de Zend en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 30/10/2012, 17:54
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 5 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
  #2 (permalink)  
Antiguo 30/10/2012, 18:26
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 6 meses
Puntos: 845
Respuesta: ZF2+ Doctrine2 +Zend\Paginator

Miraste el JIRA ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 30/10/2012, 18:40
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 5 meses
Puntos: 45
Respuesta: ZF2+ Doctrine2 +Zend\Paginator

Si ya lo había visto, eso y otros mas.
Pero quizá haya otra forma de hacerlo, si no solo queda esperar a que lo parchen
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com
  #4 (permalink)  
Antiguo 30/10/2012, 19:19
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 6 meses
Puntos: 845
Respuesta: ZF2+ Doctrine2 +Zend\Paginator

Honestamente no he mirado si hay algún workaround, pero por las palabras de B. Eberlei realmente lo dudo, por ahora toca traerse la entidad completa.

Edit: probaste utilizar partials y setear el mode a HYDRATE_ARRAY ?

Edit 2: como los locos, me contesto solo :P, hice en un pequeño test de partials + HYDRATE_ARRAY y parece funcionar correctamente.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)

Última edición por masterpuppet; 31/10/2012 a las 08:09
  #5 (permalink)  
Antiguo 05/12/2012, 14:12
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 5 meses
Puntos: 45
Respuesta: ZF2+ Doctrine2 +Zend\Paginator

Efectivamente funciona perfecto

Thanks!
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com

Etiquetas: doctrine, zf2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:15.