我想查询status != 4
:
from django.db.models import Q
...
queryset = User.objects.filter(is_staff=True, is_admin=True, ~Q(status = 4), )
但我错了:
怎么办?似乎~Q
不起作用?
答案 0 :(得分:1)
queryset = User.objects.filter(is_staff=True, is_admin=True).exclude(status=4)
答案 1 :(得分:0)
在python中,关键字参数后不能有位置参数。您必须使用Q
作为filter
的第一个参数。
queryset = User.objects.filter(~Q(status = 4), is_staff=True, is_admin=True)