Django过滤查询和或

问题描述 投票:0回答:1

我想在一个过滤方法中使用AND OR AND,是否可以不使用自定义查询?像这样的东西:.filter((Q(condtion) & Q(condition)) | (Q(condition) & Q(condition)))

django django-models
1个回答
0
投票

试试这样:

Model.objects.filter(Q(Q(condition)&Q(condition))|Q(Q(condition)&Q(condition)))

要么

qa = Model.objects.filter(conditon_a='value', conditon_b='value')  # Or .filter(Q(conditon)&Q(condition))
qb = Model.objects.filter(conditon_a='value', conditon_b='value')

queryset = qa | qb
© www.soinside.com 2019 - 2024. All rights reserved.