Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Modelo relacionado con dos tablas

Estas en el tema de Modelo relacionado con dos tablas en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola que tal. Trabajando en una aplicación construida con Zend framework me surgió una duda: Tengo un Modelo que interactua con dos tablas en la ...
  #1 (permalink)  
Antiguo 24/07/2009, 15:25
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 8 meses
Puntos: 20
Modelo relacionado con dos tablas

Hola que tal. Trabajando en una aplicación construida con Zend framework me surgió una duda:

Tengo un Modelo que interactua con dos tablas en la base de datos(relación uno a muchos). Los datos Modelo interactuan con DataMappers. Obviamente necesito utilizar transacciones para asegurar la integridad de los datos. Mi pregunta es: ¿Quien sería el encargado de administrar esas transacciones? ¿El Modelo principal? ¿El DataMapper padre?

Saludos.
__________________
I see dead pixels
  #2 (permalink)  
Antiguo 25/07/2009, 12:05
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Modelo relacionado con dos tablas

La ventaja del DataMapper es ese mismo, ahí es donde realizas la logica de la transacción, por ejemplo:
Código php:
Ver original
  1. function saveSomething() {
  2.       try {
  3.              $db->beginTransaction();
  4.              $tbl1->save($algo);
  5.              $tbl2->save($otracosa);
  6.              $db->commit();
  7.       } catch( Zend_Db_Exception $zde ) {
  8.              $db->rollBack();
  9.       }
  10. }

Saludos.
  #3 (permalink)  
Antiguo 25/07/2009, 16:02
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 8 meses
Puntos: 20
Respuesta: Modelo relacionado con dos tablas

Perfecto! Gracias
__________________
I see dead pixels
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 09:18.