[英]Django QuerySet: filter by the value of another field
我有一个模型,我希望按其属性a
过滤。 该模型还有另一个属性b
。 我试图过滤a
为0或a
具有b
属性值的条目(显然对于每一行)。 如何按另一列的值过滤?
这是我尝试过的,以及缺失的部分:
MyModel.objects.filter(Q(a=0) | Q(a=???)) # ??? is to be the value of the `b` column
我正在使用Django 1.4,我知道它是一个不再受支持的旧版本,但遗憾的是执行升级并不适合我。
您可以使用F模型比较两个字段。
from django.db.models import F
MyModel.objects.filter(a__exact = F('b'))
所以对于你的联合查询,你可以使用类似的东西,
MyModel.objects.filter(Q(a=0) | Q(a__exact=F('b')))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.