0

我有两个模型。父子模型。而儿子模型中的关系是:

father = models.ForeignKey(Father, related_name="father")

现在在真实数据库中,我有 5 个父亲,每个父亲有 5 个儿子。我想找20岁的儿子。

father = Father.objects.all()
#how to find all sons with age 20?
4

1 回答 1

1

您的标题与您的问题不太匹配,并且您的问题缺少信息。但是,这是你想要的吗?

fathers = Fathers.objects.all()
sons = Son.objects.filter(father__in=fathers, age=20)

但是,假设所有的儿子都有父亲,你可以把它写成

sons = Son.objects.filter(age=20)

如果您要从一位父亲那里寻找所有 20 岁的儿子:

father = Fathers.objects.get(id=101)
sons = Son.objects.filter(father=father, age=20)

这假设您对父亲和儿子有不同的模型(这不是一个好的设计决策,但这是我从您的问题中理解的)。

于 2013-05-09T14:25:09.323 回答