diff options
Diffstat (limited to 'django/db/models/sql/query.py')
| -rw-r--r-- | django/db/models/sql/query.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/django/db/models/sql/query.py b/django/db/models/sql/query.py index b7b93c235a..cca11bfcc2 100644 --- a/django/db/models/sql/query.py +++ b/django/db/models/sql/query.py @@ -627,8 +627,12 @@ class Query(BaseExpression): if result is None: result = empty_set_result else: - converters = compiler.get_converters(outer_query.annotation_select.values()) - result = next(compiler.apply_converters((result,), converters)) + cols = outer_query.annotation_select.values() + converters = compiler.get_converters(cols) + rows = compiler.apply_converters((result,), converters) + if compiler.has_composite_fields(cols): + rows = compiler.composite_fields_to_tuples(rows, cols) + result = next(rows) return dict(zip(outer_query.annotation_select, result)) |
