mad_hhatter
21-05-2008, 13:54
ciao, sto studiando elixir e facendo un po' di test e sono sorti un po' di dubbi.
andiamo per ordine:
ho una classe A(Entity) avevte chiave primaria 'id'.
creo due istanze di A con lo stesso id (lo so, è stupido, ma sto facendo dei test).
quando invoco sessio.flush() ottengo un sqlalchemy.exceptions.FlushError perché session contiene due istanze della stessa Entity con identica chiave primaria.
prima domanda: perché l'oggetto session non mi segnala la cosa prima del flush, magari all'atto della creazione del secondo oggetto?
seconda domanda: navigando nel codice di elixir mi sono andato a spulciare l'implementazione della classe Entity, ma nel suo __init__ non ho trovato traccia di invocazioni a sessio.save. Vorrei capire come, a seguito della creazione di un oggetto di tipo Entity, questo viene aggiunto a session
grazie mille per l'aiuto!
andiamo per ordine:
ho una classe A(Entity) avevte chiave primaria 'id'.
creo due istanze di A con lo stesso id (lo so, è stupido, ma sto facendo dei test).
quando invoco sessio.flush() ottengo un sqlalchemy.exceptions.FlushError perché session contiene due istanze della stessa Entity con identica chiave primaria.
prima domanda: perché l'oggetto session non mi segnala la cosa prima del flush, magari all'atto della creazione del secondo oggetto?
seconda domanda: navigando nel codice di elixir mi sono andato a spulciare l'implementazione della classe Entity, ma nel suo __init__ non ho trovato traccia di invocazioni a sessio.save. Vorrei capire come, a seguito della creazione di un oggetto di tipo Entity, questo viene aggiunto a session
grazie mille per l'aiuto!