diff options
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/orm/loading.py | 3 | ||||
| -rw-r--r-- | lib/sqlalchemy/orm/query.py | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/lib/sqlalchemy/orm/loading.py b/lib/sqlalchemy/orm/loading.py index ab51e8639..df1477210 100644 --- a/lib/sqlalchemy/orm/loading.py +++ b/lib/sqlalchemy/orm/loading.py @@ -123,6 +123,7 @@ def merge_result(query, iterator, load=True): mapped_entities = [i for i, e in enumerate(query._entities) if isinstance(e, querylib._MapperEntity)] result = [] + keys = [ent._label_name for ent in query._entities] for row in iterator: newrow = list(row) for i in mapped_entities: @@ -130,7 +131,7 @@ def merge_result(query, iterator, load=True): attributes.instance_state(newrow[i]), attributes.instance_dict(newrow[i]), load=load, _recursive={}) - result.append(util.NamedTuple(newrow, row._labels)) + result.append(util.KeyedTuple(newrow, keys)) return iter(result) finally: diff --git a/lib/sqlalchemy/orm/query.py b/lib/sqlalchemy/orm/query.py index 46ee59298..ca38d726c 100644 --- a/lib/sqlalchemy/orm/query.py +++ b/lib/sqlalchemy/orm/query.py @@ -1816,12 +1816,12 @@ class Query(object): # track the path to prevent redundant joins if not create_aliases and prop: self._update_joinpoint({ - '_joinpoint_entity':right, + '_joinpoint_entity': right, 'prev':((left, right, prop.key), self._joinpoint) }) else: self._joinpoint = { - '_joinpoint_entity':right + '_joinpoint_entity': right } self._join_to_left(left, right, |
