好吧,也许它并不复杂,但我被困在这个问题上。我有这个模型架构:
Evento(models.Model):
aprobado = models.BooleanField()
mod = models.ForeignKey(model=Mod, null=True)
[...]
Mod(models.Model):
activo = models.BooleanField()
[...]
我想检索具有 aprobado == True
和 mod == None
或(如果 mod != None)mod.activo = 的对象= 假
。
最佳答案
使用"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))
关于python - 如何进行这样复杂的查找?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15398055/