Ver Mensaje Individual
  #6 (permalink)  
Antiguo 14/04/2011, 12:24
Avatar de masterpuppet
masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Duda con ORM casero

Cita:
Como dije arriba el problema lo tengo cuando en mi tabla hay mas de una clave primaria. Yo uso MySQL Workbench 5.2 CE para el diseño de las base de datos. Y cuando hago una relacion de 1:N entre dos tablas, donde esta la clave foránea me pone 2 claves primarias por ejemplo si yo armo una relacion entre 2 tablas así:
Me parece que es un error de concepto, estas creando una relación 1:N identifying cuando no lo debería ser, un producto no depende de una categoría para existir, la relación debería ser 1:N non-identifying, las claves foráneas te las representa con un rombo en rojo(al menos era así).

Cita:
si la idea es que pueda soportar claves compuesta y que pueda identificar cual es la mas importante, por ejemplo un id autoincremental respecto de otra clave.
Suerte con esto destor77, hay ORM's que no lo soportan y simplemente te obligan a tener siempre una clave primaria no compuesta, te sugiero este camino, si lo que vas a hacer es simple.

Cita:
Analicé de usar doctine, pero no me gusto para nada eso de tener que andar seteando los campos de la tabla en la clase. En http://www.doctrine-project.org/proj...n-to-models/en los ejemplos que muestra hay que crear al menos 3 clases por tabla. Si bien no busco competir con doctrine jajaja, lo que busco es ahorrar tiempo de codificación/configuración.
Y si por el momento mis tablas y relaciones son muy basica, a lo sumo relaciones entre 2 a 4 tablas como mucho.
Es un ejemplo de como se implementa, en la realidad no se hace a mano, se utiliza YML, tanto para los modelos como para los fixtures(datos de prueba) y por medio de la consola se generan tanto las entidades como la bbdd, es mas había un plugin para el workbench que te hacia el export para Doctrine generandote el YML, te sugiero que lo mires con detenimiento.

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

Última edición por masterpuppet; 14/04/2011 a las 12:46