diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2011-05-28 13:28:38 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2011-05-28 13:28:38 -0400 |
| commit | 736481e58f62841f3be9cb34f58f426fc52594b1 (patch) | |
| tree | 8f850e4f9ef7a5cfff022238307e55e6cedcfe69 /lib/sqlalchemy/sql | |
| parent | 7e7372fc8597eea4e4bf04fa5e013ac01a2c0b84 (diff) | |
| download | sqlalchemy-736481e58f62841f3be9cb34f58f426fc52594b1.tar.gz | |
- Streamlined the process by which a Select
determines what's in it's '.c' collection.
Behaves identically, except that a
raw ClauseList() passed to select([])
(which is not a documented case anyway) will
now be expanded into its individual column
elements instead of being ignored.
Diffstat (limited to 'lib/sqlalchemy/sql')
| -rw-r--r-- | lib/sqlalchemy/sql/expression.py | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/lib/sqlalchemy/sql/expression.py b/lib/sqlalchemy/sql/expression.py index eb40e9d40..0d98c89e5 100644 --- a/lib/sqlalchemy/sql/expression.py +++ b/lib/sqlalchemy/sql/expression.py @@ -5058,19 +5058,11 @@ class Select(_SelectBase): self._froms = self._froms.union([fromclause]) - def __exportable_columns(self): - for column in self._raw_columns: - if isinstance(column, Selectable): - for co in column.columns: - yield co - elif isinstance(column, ColumnElement): - yield column - else: - continue def _populate_column_collection(self): - for c in self.__exportable_columns(): - c._make_proxy(self, name=self.use_labels and c._label or None) + for c in self.inner_columns: + if hasattr(c, '_make_proxy'): + c._make_proxy(self, name=self.use_labels and c._label or None) def self_group(self, against=None): """return a 'grouping' construct as per the ClauseElement |
