在 Django QuerySet API 中的子模型字段中计算布尔值



我有以下模型(如下)。

我想要一个返回父Question(models.Model)每条记录的查询,其中子Choice(models.Model)is_relevant字段的所有值都是"True"。

很难创建QuerySet. 任何援助都将非常有帮助。

model.py

from django.db import models

class Question(models.Model):
    question_text = models.CharField(max_length=200)

class Choice(models.Model):
    question = models.ForeignKey(Question, on_delete=models.CASCADE)
    choice_text = models.CharField(max_length=200)
    is_relevant = models.BooleanField()

您可以使用Question模型的反向关系,如下所示:

Question.objects.filter(choice__is_relevant=True)

choice__is_relevant 中的choice是模型Choice的小写名称。

参考:关系查找

最新更新