summaryrefslogtreecommitdiff
path: root/django/db/models/sql/query.py
diff options
context:
space:
mode:
authorSimon Charette <charette.s@gmail.com>2019-11-15 00:24:21 -0500
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2019-11-21 11:56:35 +0100
commitf97a6123c07de5099fdf8b7d00ef7d20ed354e07 (patch)
tree77ad081f3d363291bc2274d349461bb401f88efc /django/db/models/sql/query.py
parente9a0e1d4f6ecfc4227acff74e1f56f288a0b30aa (diff)
Refs #25367 -- Made Query.build_filter() raise TypeError on non-conditional expressions.
Diffstat (limited to 'django/db/models/sql/query.py')
-rw-r--r--django/db/models/sql/query.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/django/db/models/sql/query.py b/django/db/models/sql/query.py
index dcf897c649..8fee6b0183 100644
--- a/django/db/models/sql/query.py
+++ b/django/db/models/sql/query.py
@@ -1230,7 +1230,9 @@ class Query(BaseExpression):
allow_joins=allow_joins,
split_subq=split_subq,
)
- if hasattr(filter_expr, 'resolve_expression') and getattr(filter_expr, 'conditional', False):
+ if hasattr(filter_expr, 'resolve_expression'):
+ if not getattr(filter_expr, 'conditional', False):
+ raise TypeError('Cannot filter against a non-conditional expression.')
condition = self.build_lookup(
['exact'], filter_expr.resolve_expression(self, allow_joins=allow_joins), True
)