diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2005-10-01 19:47:07 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2005-10-01 19:47:07 +0000 |
commit | 155fbd97fcb02cf09be67d9b46cf140e6fd16770 (patch) | |
tree | b39029218b8a931ab0809ffb4c0415051310add5 /lib/sqlalchemy/mapper.py | |
parent | 902f39e549c343cc723017e7e44155f3a252b3db (diff) | |
download | sqlalchemy-155fbd97fcb02cf09be67d9b46cf140e6fd16770.tar.gz |
Diffstat (limited to 'lib/sqlalchemy/mapper.py')
-rw-r--r-- | lib/sqlalchemy/mapper.py | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/lib/sqlalchemy/mapper.py b/lib/sqlalchemy/mapper.py index e9ec1ee57..218c4fb66 100644 --- a/lib/sqlalchemy/mapper.py +++ b/lib/sqlalchemy/mapper.py @@ -658,17 +658,17 @@ class PropertyLoader(MapperProperty): #uowcommit.register_task(self.mapper, True, self, self.parent, False) else: raise " no foreign key ?" - + + def get_object_dependencies(self, obj, uowcommit, passive = True): + """function to retreive the child list off of an object. "passive" means, if its + a lazy loaded list that is not loaded yet, dont load it.""" + if self.uselist: + return uowcommit.uow.attributes.get_list_history(obj, self.key, passive = passive) + else: + return uowcommit.uow.attributes.get_history(obj, self.key) + def process_dependencies(self, deplist, uowcommit, delete = False): print self.mapper.table.name + " " + repr(deplist.map.values()) + " process_dep isdelete " + repr(delete) - - # function to retreive the child list off of an object. "passive" means, if its - # a lazy loaded list that is not loaded yet, dont load it. - def getlist(obj, passive = True): - if self.uselist: - return uowcommit.uow.attributes.get_list_history(obj, self.key, passive = passive) - else: - return uowcommit.uow.attributes.get_history(obj, self.key) # fucntion to set properties across a parent/child object plus an "association row", # based on a join condition @@ -676,6 +676,9 @@ class PropertyLoader(MapperProperty): self._sync_foreign_keys(binary, obj, child, associationrow, clearkeys) setter = BinaryVisitor(sync_foreign_keys) + def getlist(obj, passive=True): + return self.get_object_dependencies(obj, uowcommit, passive) + associationrow = {} # plugin point |