summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/sql/selectable.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2014-09-06 17:56:53 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2014-09-06 17:56:53 -0400
commite80c7cc5c103788a4c7e1c479af2c37cd9c958b3 (patch)
tree87df4dd4fe620b16df15d3ff5f6b7c04ba913a74 /lib/sqlalchemy/sql/selectable.py
parent4e285fd6ba2cbaf4b43e943a0e6bb45cc104cf08 (diff)
downloadsqlalchemy-e80c7cc5c103788a4c7e1c479af2c37cd9c958b3.tar.gz
wip for #3148
Diffstat (limited to 'lib/sqlalchemy/sql/selectable.py')
-rw-r--r--lib/sqlalchemy/sql/selectable.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/lib/sqlalchemy/sql/selectable.py b/lib/sqlalchemy/sql/selectable.py
index b802a6944..57b16f45f 100644
--- a/lib/sqlalchemy/sql/selectable.py
+++ b/lib/sqlalchemy/sql/selectable.py
@@ -1814,7 +1814,7 @@ class GenerativeSelect(SelectBase):
*clauses, _literal_as_text=_literal_as_label_reference)
@property
- def _inner_column_dict(self):
+ def _label_resolve_dict(self):
raise NotImplementedError()
def _copy_internals(self, clone=_clone, **kw):
@@ -1884,7 +1884,7 @@ class CompoundSelect(GenerativeSelect):
GenerativeSelect.__init__(self, **kwargs)
@property
- def _inner_column_dict(self):
+ def _label_resolve_dict(self):
return dict(
(c.key, c) for c in self.c
)
@@ -2498,11 +2498,14 @@ class Select(HasPrefixes, GenerativeSelect):
return _select_iterables(self._raw_columns)
@_memoized_property
- def _inner_column_dict(self):
+ def _label_resolve_dict(self):
d = dict(
- (c._label or c.key, c)
- for c in _select_iterables(self._raw_columns))
- d.update((c.key, c) for c in _select_iterables(self.froms))
+ (c._resolve_label or c._label or c.key, c)
+ for c in _select_iterables(self._raw_columns)
+ if c._allow_label_resolve)
+ d.update(
+ (c.key, c) for c in
+ _select_iterables(self.froms) if c._allow_label_resolve)
return d