django如何从子关系到父模板获取字段

时间:2014-09-14 20:05:27

标签: python django

如果我有一对多的关系模型。如何在父模板中显示相关子表中的项目。

models.py

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

class Child(models.Model):
    parent = models.ForeignKey(Parent)
    child_name = models.CharField()

parent.html

{% for parent in parents %}

            <tr>
                <td><a href="/get/parent/{{ parent.id }}/">{{ parent.id }}</a></td>
                <td><a href="/parent/get/{{ parent.id }}/">{{ parent.name }}</a></td>
                <td><a href="/parent/get/{{ parent.id }}/">{{ child.child_name }}</a></td>
            </tr>

            {% endfor %}

1 个答案:

答案 0 :(得分:5)

阅读关于以下关系的Django文档:https://docs.djangoproject.com/en/dev/topics/db/queries/#backwards-related-objects

但基本上,它是parent.child_set.all

您可以通过向child_set添加related_name='children'来更改名称ForeignKeyparent = ForeignKey(Parent, related_name='children')

然后您可以使用:parent.children.all