diff options
| author | Keryn Knight <keryn@kerynknight.com> | 2021-07-20 10:59:21 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-07-20 11:59:21 +0200 |
| commit | 6a970a8b4600eb91be25f38caed0a52269d6303d (patch) | |
| tree | 8df683bedae64353e208b6b968b7f0eb8d4ba0de /django/db/models/sql | |
| parent | ff661dbd506efbdf51cc8da89cb98731c8a62f49 (diff) | |
Fixed #32944 -- Avoided unnecessary WhereNode.add() calls.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Diffstat (limited to 'django/db/models/sql')
| -rw-r--r-- | django/db/models/sql/query.py | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/django/db/models/sql/query.py b/django/db/models/sql/query.py index b3d92d786c..8837881579 100644 --- a/django/db/models/sql/query.py +++ b/django/db/models/sql/query.py @@ -1265,9 +1265,7 @@ class Query(BaseExpression): condition = filter_expr.resolve_expression(self, allow_joins=allow_joins) if not isinstance(condition, Lookup): condition = self.build_lookup(['exact'], condition, True) - clause = self.where_class() - clause.add(condition, AND) - return clause, [] + return self.where_class([condition], connector=AND), [] arg, value = filter_expr if not arg: raise FieldError("Cannot parse keyword query %r" % arg) @@ -1286,11 +1284,9 @@ class Query(BaseExpression): if check_filterable: self.check_filterable(value) - clause = self.where_class() if reffed_expression: condition = self.build_lookup(lookups, reffed_expression, value) - clause.add(condition, AND) - return clause, [] + return self.where_class([condition], connector=AND), [] opts = self.get_meta() alias = self.get_initial_alias() @@ -1333,7 +1329,7 @@ class Query(BaseExpression): condition = self.build_lookup(lookups, col, value) lookup_type = condition.lookup_name - clause.add(condition, AND) + clause = self.where_class([condition], connector=AND) require_outer = lookup_type == 'isnull' and condition.rhs is True and not current_negated if current_negated and (lookup_type != 'isnull' or condition.rhs is False) and condition.rhs is not None: |
