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

funcion para obtener datos de las tablas

Estas en el tema de funcion para obtener datos de las tablas en el foro de Zend en Foros del Web. Hola a todos, Estoy empezando a trabajar con con Doctrine 2.0.1 y Zend framework y quisera saber como obtener con doctrine todos los datos de ...
  #1 (permalink)  
Antiguo 30/03/2012, 22:04
 
Fecha de Ingreso: enero-2012
Mensajes: 20
Antigüedad: 12 años, 11 meses
Puntos: 0
funcion para obtener datos de las tablas

Hola a todos, Estoy empezando a trabajar con con Doctrine 2.0.1 y Zend framework y quisera saber como obtener con doctrine todos los datos de un tabla de la base de datos.
  #2 (permalink)  
Antiguo 31/03/2012, 02:50
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: funcion para obtener datos de las tablas

Te dejo la referencia http://docs.doctrine-project.org/pro...sttabledetails

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 31/03/2012, 08:45
 
Fecha de Ingreso: enero-2012
Mensajes: 20
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: funcion para obtener datos de las tablas

Hola, muchas gracias, pero no me funcionó utilizo la version 2 doctrine y basicamente lo que quiero hacer es listar los roles de mi tabla rol, por favor si me puedieras ayudar te lo agradeceria porque estoy desarrollando mi tesis y llevo dias tratando de resoler esto y no me funciona. Saludos
  #4 (permalink)  
Antiguo 31/03/2012, 09:09
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: funcion para obtener datos de las tablas

Que es lo que quieres exactamente, obtener la info de la tabla o trabajar con las entidades ?, si es lo primero es el link que te deje en el post anterior, ahora si lo que quieres son las entidades en la doc tienes lo que necesitas

http://readthedocs.org/docs/doctrine...g-started.html
http://docs.doctrine-project.org/pro...h-objects.html

si quieres algo mas especifico muestra lo que tienes hecho y no te funciona.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 31/03/2012, 21:06
 
Fecha de Ingreso: enero-2012
Mensajes: 20
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: funcion para obtener datos de las tablas

Hola, gracias por la ayuda, pero aun no he ressuelto el problema. Mira tengo tabla de mi base de datos que se llama Rol la cual tiene dos columna idrol y nombreRol la, tambien tengo mi tabla usuario con nombre, idusuario. La tabla usuario y rol se encuentran relacionadas, cuando voy a adicionar un usuario a parte de los datos que antes mencione necesito mostrar tambien los roles que existen en un select que son dos que se encuentran en la tabla rol en la columna nombre rol(EPS, Admin) y lo que necesito saber es como obtener todos los elementos de la columna nombrerol para luego listar dentro del select los distintos roles. Cada tabla de la base de datos que te menciono esta mapeadas con doctrine por ejemplo:
/**
* @Entity
* @Table(name="rol")
*/
class Default_Model_rol
{
/**
* @Id @Column(type="integer")
* @GeneratedValue(strategy="AUTO")
*/
private $idrol;

/** @Column(type="string") */
private $nombrerol;

}

Con Zend_db para obtener todos campos de una tabla se escribe asi la función
public function listar()
{
//devuelve todos los registros de la tabla
return $this->fetchAll();
}
pero con doctrine aun no he encontrado la funcion. Saludos Meralys
  #6 (permalink)  
Antiguo 01/04/2012, 05:52
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: funcion para obtener datos de las tablas

Es que esta en la documentación que te pase, se hace a través de los repositorios http://readthedocs.org/docs/doctrine...y-repositories, en tu controller deberías tener algo así(dependiendo de tu integración):

Código PHP:
Ver original
  1. public function listAction()
  2. {
  3.     $doctrineContainer = $this->getInvokeArg('bootstrap')->getResource('doctrine');
  4.     $em = $doctrineContainer->getEntityManager();
  5.  
  6.     //READ
  7.     $roles = $em->findAll('Default_Model_Rol');
  8.     //or
  9.     $roles = $em->getRepository('Default_Model_Rol')->findAll();
  10.  
  11.     //WRITE
  12.     $rol = new Default_Model_Rol();
  13.     $rol->setName('Admin');
  14.     $em->persist($rol);
  15.     $em->flush();
  16. }

así seria la forma mas básica de utilizarlo, pero claro esta que no es la mas "limpia", lo ideal seria crear una capa mas de services o managers que consuman los repositorios.

Una sugerencia, las propiedades de la clase no deberían tener como sufijo la clase, es redundante, idrol debería ser simplemente id, lo mismo con nombrerol, deberia ser nombre.

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

Última edición por masterpuppet; 01/04/2012 a las 12:14
  #7 (permalink)  
Antiguo 03/04/2012, 15:01
 
Fecha de Ingreso: enero-2012
Mensajes: 20
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: funcion para obtener datos de las tablas

Hola, muchas gracias me sirvio de mucho lo que me mandastes pero solo si lo pongo en el init() de mi controller y no en el metodo porque sino el arreglo me da null y ademas tuve que poner lo siguiente en el init tambien para que vaya para la vista $this->view->datos=$roles, en realidad no se porque me funcion en el init() y cuando lo hago un la fucntion listarAction() me da null el arreglo . Saludos

Etiquetas: doctrine
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 10:36.