TypeError:|:' bool'不支持的操作数类型和' Q'

时间:2015-01-28 20:06:43

标签: django django-q

我正在运行Django 1.7,并且在尝试执行以下操作时我得到TypeError: unsupported operand type(s) for |: 'bool' and 'Q'

class PersonList(generic.ListView):
    template_name = "persons/list.html"
    model = Person
    queryset = Person.objects.filter(Q(field1__isnull=True | Q(field2__isnull=True)))

1 个答案:

答案 0 :(得分:5)

在示例代码中,括号不是使用models.Q时的括号。

解决方案:

Person.objects.filter(Q(field1__isnull=True) | Q(field2__isnull=True))

请注意结束。