Evento(models.Model):
aprobado = models.BooleanField()
mod = models.ForeignKey(model=Mod, null=True)
[...]
Mod(models.Model):
activo = models.BooleanField()
[...]
我想使用aprobado == True
和mod == None
或(如果mod!=无)mod.activo == False
检索对象。
答案 0 :(得分:2)
使用"Q" object和按位OR运算符(Q对象重载表示SQL OR)。
from django.db.models import Q
queryset = Evento.objects.filter(Q(mod__isnull=True, aprobado=True) | Q(mod__isnull=False, mod__activo=False))
答案 1 :(得分:1)
您可以详细并使用Q
objects:
Evento \
.objects \
.filter(
Q(aprobado==True, mod__isnull=True) |
Q(mod__isnull=False, mod__activo=False)