DjangoForeignKey反向关系

问题描述 投票:0回答:1

我有 2 个模型,一个父模型和一个子模型。我正在尝试从父模型调用子模型

class Parent(models.Model):
    name = models.CharField(...)

class ChildClass(models.Model):
    name = models.CharField(...)
    parent = models.ForeignKey(Parent, on_delete=models.CASCADE, related_name=child_class)

如果我想参考父类,我知道我可以使用子类

new=ChildClass.objects.all 那么 new.parent.name 会给我父名称

当我想通过ManyToOne关系调用子类时,问题就来了。我不知道如何构建我的查询集。

我没有尝试过任何事情,因为我从未遇到过这个问题,而且我在这里找不到答案

django django-models django-views django-queryset django-orm
1个回答
0
投票

您正在寻找的是 Django 自动添加到您的

_set
模型中的
Parent
魔法。 看这里

但是,请记住,这不会只从您的父母那里得到一个孩子,因为您的父母可能有很多孩子。

但是,就您而言,类似的内容应该为您提供父母的所有孩子。

parent = Parent.objects.first()
children = parent.childclass_set.all()
© www.soinside.com 2019 - 2024. All rights reserved.