Django过滤器中等于和不等于的组合
我尝试在Django对象筛选器中使用not equals进行筛选,如下所示:Django过滤器中等于和不等于的组合,django,django-models,Django,Django Models,我尝试在Django对象筛选器中使用not equals进行筛选,如下所示: peculiarties = MetricAssociation.objects.filter(metric=metric, specifics != null) 这不是工作原因!=。然而,我已经使用exclude等对此做了很多研究,但似乎找不到任何东西可以在一个Django查询中同时进行真过滤和假过滤 有没有关于如何执行True metric=metric和False详细信息的建议!=空?您可以在这种情况下使用 f
peculiarties = MetricAssociation.objects.filter(metric=metric, specifics != null)
这不是工作原因!=。然而,我已经使用exclude等对此做了很多研究,但似乎找不到任何东西可以在一个Django查询中同时进行真过滤和假过滤
有没有关于如何执行True metric=metric和False详细信息的建议!=空?您可以在这种情况下使用
from django.db.models import Q
peculiarties = MetricAssociation.objects.filter(Q(metric=metric) & ~Q(specifics=None))
在这种情况下,您可以使用
from django.db.models import Q
peculiarties = MetricAssociation.objects.filter(Q(metric=metric) & ~Q(specifics=None))
不需要Q对象。这是内置的
请注意,这里有一个双下划线。不需要Q对象。这是内置的
请注意,有一个双下划线。或筛选器和排除的组合
MetricAssociation.objects.filter(metric=metric).exclude(specifics=None)
或筛选和排除的组合
MetricAssociation.objects.filter(metric=metric).exclude(specifics=None)