我正在运行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)))
Run Code Online (Sandbox Code Playgroud)
在示例代码中,使用括号时,括号不是应该放在的位置models.Q。
解:
Person.objects.filter(Q(field1__isnull=True) | Q(field2__isnull=True))
Run Code Online (Sandbox Code Playgroud)
注意右括号。