diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2007-05-20 16:40:21 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2007-05-20 16:40:21 +0000 |
commit | 555ab611f159d40af9653e8dcd53bf92fd2bd592 (patch) | |
tree | 24c6fc67b7f0baa7c2f014183969d14bb8d46a37 /lib/sqlalchemy | |
parent | 9102d678abdaf7e9ab0ce59a913283eb16810b9a (diff) | |
download | sqlalchemy-555ab611f159d40af9653e8dcd53bf92fd2bd592.tar.gz |
- fixed bug in query.instances() that wouldnt handle more than
on additional mapper or one additional column.
Diffstat (limited to 'lib/sqlalchemy')
-rw-r--r-- | lib/sqlalchemy/orm/query.py | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/lib/sqlalchemy/orm/query.py b/lib/sqlalchemy/orm/query.py index 38279f5f2..74d4ceed7 100644 --- a/lib/sqlalchemy/orm/query.py +++ b/lib/sqlalchemy/orm/query.py @@ -882,16 +882,20 @@ class Query(object): if isinstance(m, type): m = mapper.class_mapper(m) if isinstance(m, mapper.Mapper): - appender = [] - def proc(context, row): - if not m._instance(context, row, appender): - appender.append(None) - process.append((proc, appender)) + def x(m): + appender = [] + def proc(context, row): + if not m._instance(context, row, appender): + appender.append(None) + process.append((proc, appender)) + x(m) elif isinstance(m, sql.ColumnElement) or isinstance(m, basestring): - res = [] - def proc(context, row): - res.append(row[m]) - process.append((proc, res)) + def y(m): + res = [] + def proc(context, row): + res.append(row[m]) + process.append((proc, res)) + y(m) result = [] else: result = util.UniqueAppender([]) |