Yeah, I'm using dynamic loaders quite a bit in my mappings. I can
always drop down to Session.execute(table.update() or table.insert())
for editing my data if necessary but this behavior in the ORM
surprised me so I figured I'd make a post about it to see what
everyone else thought.

> the reason it fetches the existing value is to do a comparison, so it
> knows whether or not to flush that attribute (or for collections, to
> determine specifically whats changed).

Couldn't you emulate this behavior with a get/set descriptor? If
__get__ is called (or __set__ with the data loaded), do the normal
behavior. If __set__ is called and nothing has been loaded yet, set a
flag to flush this attribute and set the value without loading the
data.


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to