2014-09-15 1 views
0

Я пытаюсь получить список дочерних элементов, принадлежащих родительскому объекту, из родительского шаблона.django, ссылающийся на дочерний элемент в родительском шаблоне

Heres мой код до сих пор:

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

[пожалуйста, не перепечатывать тот же вопрос каждый раз, когда вы попали в стену] (http://stackoverflow.com/questions/25846062/django-how-to-following -relationships-backwards) – yuvi

+0

Также, вы сделали [учебник django] (https://docs.djangoproject.com/en/1.7/intro/tutorial01/)? – yuvi

+0

@yuvi хорошо, это не дубликат - здесь OP спрашивает о получении его в шаблоне. – alecxe

ответ

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> 
+0

У него уже есть [ответ здесь] (http://stackoverflow.com/a/25846688/2387772) – yuvi

+0

@yuvi, этот ответ неверен. Поместите там комментарий. – Rohan

+0

Я заметил. Я просто пытаюсь заставить OP избежать спама одного и того же вопроса снова и снова, и вместо этого получить ответ в этой исходной ссылке – yuvi

Смежные вопросы