ppazos / yupp

Automatically exported from code.google.com/p/yupp
0 stars 0 forks source link

Caso de salvada en cascada cuando no es necesario #9

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
PersistentManager::save PageAccessLog
PersistentManager::save_cascade PageAccessLog SESSIONID: 1236028091_11531_14312
PersistentManager::save_cascade User SESSIONID: 1236028091_11531_14312
PO:update_simple_assocs
PersistentManager::save_object User
DAL::exists portal_user (1)
DatabaseMySQL::query : SELECT id FROM portal_user WHERE id=1
DAL::update portal_user User
DatabaseMySQL::query : UPDATE portal_user SET nombre='Pablo
Pazos',email='pepe@gmail.com',clave='asdqwersdf',edad='27',fechaNacimiento='1981
-10-24',type='admin',class='

User',deleted='0' WHERE id=1
PersistentManager::save_cascade Page SESSIONID: 1236028091_11531_14312

Tengo un usuario colgado desde el PageAccessLog, pero la referencia desde
el log al usuario es blanda, al crear o destruir un log, el usuario ni se
da cuenta, la referencia es solo para saber que usuario fue el que genera 
el log. La solucion seria meter un tipo de relacion hasOne @weak@, o tomar
la politica de que si la relacion hasOne unidireccional no dice belongsTo
en el item referenciado, entonces al salvar el que tiene la referencia no
se salva el referenciado (que no tiene belongsTo) y considero eso como
relacion blanda.

Original issue reported on code.google.com by pablo.swp@gmail.com on 31 Mar 2009 at 3:23

GoogleCodeExporter commented 8 years ago
Solucionado haciendo que el atributo belongsTo sea declarado de forma 
obligatoria
para relaciones 1..1 unidireccionales, solo cuando la relacion es fuerte, si es 
debil
no se declara belongsTo y no se realiza la salvada en cascada.

Se liberará con Yupp v0.1.6.4

Original comment by pablo.swp@gmail.com on 24 Apr 2009 at 2:03

GoogleCodeExporter commented 8 years ago
Probado, funciona OK

Original comment by pablo.swp@gmail.com on 24 Apr 2009 at 2:04