diff options
| author | Rajiv Makhijani <rajiv@blue-tech.org> | 2014-08-08 03:08:26 -0700 |
|---|---|---|
| committer | Anssi Kääriäinen <akaariai@gmail.com> | 2014-08-11 09:35:37 +0300 |
| commit | 4ce5ced230481fc93288aeea922398bc36102d1e (patch) | |
| tree | 982f3ea1553afe483af7db1b6b06a7c07a208f18 /django | |
| parent | 07c79252828c17b9b799d59a3bbbe45c62fe6d38 (diff) | |
[1.7.x] Fixed #23259 -- Corrected insertion order of extra() select_params
A regression caused queries to produce incorrect results for cases where
extra(select) is excluded by values() but included by extra(order_by)
The regression was caused by 2f35c6f10fcbae541691207fb0c0560a13b754fc.
Backport of f0b358880a from master
Diffstat (limited to 'django')
| -rw-r--r-- | django/db/models/sql/compiler.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/django/db/models/sql/compiler.py b/django/db/models/sql/compiler.py index 6792824ecd..d8697fa06d 100644 --- a/django/db/models/sql/compiler.py +++ b/django/db/models/sql/compiler.py @@ -117,7 +117,7 @@ class SQLCompiler(object): if self.query.distinct: result.append(self.connection.ops.distinct_sql(distinct_fields)) - params.extend(o_params) + result.append(', '.join(out_cols + self.ordering_aliases)) params.extend(s_params) params.extend(self.ordering_params) @@ -146,6 +146,7 @@ class SQLCompiler(object): if ordering: result.append('ORDER BY %s' % ', '.join(ordering)) + params.extend(o_params) if with_limits: if self.query.high_mark is not None: |
