resultquery = (Q(field1='val11') | Q(field1='val12')) & ...
result = SomeModel.objects.filter(resultquery)
Also, in
.
سؤال
I want to query my Django model with a filter like this:
(pseudo code)
field1values = ['val11','val12']
field2values = ['val21','val22']
result = (field1 == 'val11' | field1 == 'val12') & (field2 == 'val21' | field2 == 'val22')
If I had to query for only field1 here the code could look like this:
clauses = []
for item in field1values:
clauses.append(MyModel.objects.filter(field1=item))
result = reduce(lambda x, y: x | y, clauses)
But I cannot figure out how to create the filters for the complex predicate that I want
المحلول
resultquery = (Q(field1='val11') | Q(field1='val12')) & ...
result = SomeModel.objects.filter(resultquery)
Also, in
.