summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2013-10-11 16:49:36 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2013-10-11 16:49:36 -0400
commiteabf41b392ac042228765c9b95138522e44365e7 (patch)
tree33b1c2c907d07c74b51b842341069fc0f2290b74
parent75be18004fac80de6aabea409c059eaaa0dd5244 (diff)
downloadsqlalchemy-eabf41b392ac042228765c9b95138522e44365e7.tar.gz
use accepts scalar loader here so we deal with _ProxyImpl correctly
-rw-r--r--lib/sqlalchemy/orm/state.py10
-rw-r--r--test/orm/test_unitofwork.py4
2 files changed, 7 insertions, 7 deletions
diff --git a/lib/sqlalchemy/orm/state.py b/lib/sqlalchemy/orm/state.py
index 2c947a7ac..8d73c9426 100644
--- a/lib/sqlalchemy/orm/state.py
+++ b/lib/sqlalchemy/orm/state.py
@@ -394,12 +394,10 @@ class InstanceState(interfaces._InspectionAttr):
@property
def _unloaded_non_object(self):
- return self.unloaded.difference(self._uses_objects)
-
- @property
- def _uses_objects(self):
- return (attr for attr in self.manager
- if self.manager[attr].impl.uses_objects)
+ return self.unloaded.intersection(
+ attr for attr in self.manager
+ if self.manager[attr].impl.accepts_scalar_loader
+ )
@property
def expired_attributes(self):
diff --git a/test/orm/test_unitofwork.py b/test/orm/test_unitofwork.py
index a0f96838f..67a11e366 100644
--- a/test/orm/test_unitofwork.py
+++ b/test/orm/test_unitofwork.py
@@ -857,9 +857,11 @@ class DefaultTest(fixtures.MappedTest):
Secondary = self.classes.Secondary
mapper(Hoho, default_t, eager_defaults=True, properties={
- "sec": relationship(Secondary)
+ "sec": relationship(Secondary),
+ "syn": sa.orm.synonym(default_t.c.counter)
})
+
mapper(Secondary, self.tables.secondary_table)
h1 = Hoho()