From: Mike Bayer Date: Thu, 19 Jul 2007 21:02:36 +0000 (+0000) Subject: small fix to detect a "scalar" query when constructing columns clauses X-Git-Tag: rel_0_4_6~68 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a0e9e333fc6a3917026314eaaf7a852d8898347f;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git small fix to detect a "scalar" query when constructing columns clauses --- diff --git a/lib/sqlalchemy/sql.py b/lib/sqlalchemy/sql.py index ed9843ac7e..fe8167bfec 100644 --- a/lib/sqlalchemy/sql.py +++ b/lib/sqlalchemy/sql.py @@ -2497,7 +2497,8 @@ class _Grouping(ColumnElement): def __init__(self, elem): self.elem = elem self.type = getattr(elem, 'type', None) - + + key = property(lambda s: s.elem.key) _label = property(lambda s: s.elem._label) orig_set = property(lambda s:s.elem.orig_set) @@ -2516,7 +2517,6 @@ class _Grouping(ColumnElement): return self.elem._get_from_objects(**modifiers) def __getattr__(self, attr): - print "GROUPING ATTR", attr return getattr(self.elem, attr) class _Label(ColumnElement): @@ -3064,7 +3064,9 @@ class Select(_SelectBaseMixin, FromClause): def _get_inner_columns(self): for c in self._raw_columns: - if hasattr(c, '_selectable'): + # TODO: need to have Select, as well as a Select inside a _Grouping, + # give us a clearer idea of if we want its column list or not + if hasattr(c, '_selectable') and not getattr(c, 'is_scalar', False): for co in c._selectable().columns: yield co else: