summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/orm/query.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2006-07-20 01:00:30 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2006-07-20 01:00:30 +0000
commit0b7557a30a94b38c816499dc7e854214120b68cf (patch)
tree76c481b59eef962614634b236e4dbb40334b869a /lib/sqlalchemy/orm/query.py
parent98fb8894e3214fa01e2cfe5e83de5ff8d2c6fe3e (diff)
downloadsqlalchemy-0b7557a30a94b38c816499dc7e854214120b68cf.tar.gz
fixed [ticket:245]rel_0_2_6
Diffstat (limited to 'lib/sqlalchemy/orm/query.py')
-rw-r--r--lib/sqlalchemy/orm/query.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/sqlalchemy/orm/query.py b/lib/sqlalchemy/orm/query.py
index 8e87ac09a..268273990 100644
--- a/lib/sqlalchemy/orm/query.py
+++ b/lib/sqlalchemy/orm/query.py
@@ -18,7 +18,6 @@ class Query(object):
else:
self.mapper = class_or_mapper.compile()
self.mapper = self.mapper.get_select_mapper().compile()
-
self.always_refresh = kwargs.pop('always_refresh', self.mapper.always_refresh)
self.order_by = kwargs.pop('order_by', self.mapper.order_by)
self.extension = kwargs.pop('extension', self.mapper.extension)
@@ -317,7 +316,10 @@ class Query(object):
if order_by is False:
if self.table.default_order_by() is not None:
order_by = self.table.default_order_by()
-
+
+ if self.mapper.single and self.mapper.polymorphic_on is not None and self.mapper.polymorphic_identity is not None:
+ whereclause = sql.and_(whereclause, self.mapper.polymorphic_on==self.mapper.polymorphic_identity)
+
if self._should_nest(**kwargs):
from_obj.append(self.table)
@@ -366,5 +368,6 @@ class Query(object):
# give all the attached properties a chance to modify the query
for key, value in self.mapper.props.iteritems():
value.setup(key, statement, **kwargs)
+
return statement