summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/ext/associationproxy.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2007-04-23 19:53:34 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2007-04-23 19:53:34 +0000
commitc7729164da37c58a2b56e80ab21b830264cd63e5 (patch)
treefc56afb6ffd3212291b6ede7ed36ca578e285d23 /lib/sqlalchemy/ext/associationproxy.py
parent8bc6149ee80f4f40bcb1b4873dd436166d6037a2 (diff)
downloadsqlalchemy-c7729164da37c58a2b56e80ab21b830264cd63e5.tar.gz
- big fix to AssociationProxy so that multiple AssociationProxy
objects can be associated with a single association collection.
Diffstat (limited to 'lib/sqlalchemy/ext/associationproxy.py')
-rw-r--r--lib/sqlalchemy/ext/associationproxy.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/sqlalchemy/ext/associationproxy.py b/lib/sqlalchemy/ext/associationproxy.py
index 907ef19dc..65b95ccba 100644
--- a/lib/sqlalchemy/ext/associationproxy.py
+++ b/lib/sqlalchemy/ext/associationproxy.py
@@ -29,10 +29,11 @@ class AssociationProxy(object):
``__init__()`` constructor and setting the proxied
attribute.
"""
+
self.targetcollection = targetcollection
self.attr = attr
self.creator = creator
-
+
def __init_deferred(self):
prop = class_mapper(self._owner_class).props[self.targetcollection]
self._cls = prop.mapper.class_
@@ -67,7 +68,7 @@ class AssociationProxy(object):
self._owner_class = owner
if obj is None:
return self
- storage_key = '_AssociationProxy_%s' % self.targetcollection
+ storage_key = '_AssociationProxy_%s_%s' % (self.targetcollection, self.attr)
if self.uselist:
try:
return getattr(obj, storage_key)