我正在尝试从父模板中获取属于父项的子项列表。
到目前为止我的代码:
models.py
class Parent(models.Model):
name = models.CharField()
def get_child(self):
return self.children_set.all()
class Child(models.Model):
parent = models.ForeignKey(Parent, related_name='children')
name = models.CharField()
parent.html
{% for parent in parents %}
<tr>
<td><a href="/parent/get/{{ parent.id }}/">{{ parent.id }}</a></td>
<td><a href="/parent/get/{{ parent.id }}/">{{ parent.name }}</a></td>
<td><a href="/parent/get/{{ parent.id }}/">{% for child in parent %} <li>{{ child.get_child.name }}</li>{% endfor %}</a></td>
</tr>
{% endfor %}
答案 0 :(得分:3)
get_child()
中您不需要Parent
方法。 Parent
的孩子可以parent.children.all()
获得。
将模板更新为
<td><a href="/parent/get/{{ parent.id }}/">
{% for child in parent.children.all %}
<li>{{ child.name }}
</li>
{% endfor %}
</a></td>