Django поиск списка в списке с внешним ключом - PullRequest
0 голосов
/ 06 января 2020

Я начинаю с django (и тоже кодирую), и я не могу сделать то, что, как мне кажется, очень просто. Я хочу создать простое управление проектами.

Я создал 2 модели: Project и Step. И на шаге есть внешний ключ для 1 проекта.

class Project(models.Model):
title = models.CharField(max_length=100)

def __str__(self):
    return self.title

class Step(models.Model):
    title = models.CharField(max_length=100)  
    project= models.ForeignKey('Project', on_delete=models.CASCADE, null=True)

Мне удалось создать шаг в проекте, сделать список, чтобы увидеть все шаги для 1 проекта, но теперь на моей домашней странице я хотите перечислить все проекты и 4 шага в каждом проекте, например:

Проект 1 (Шаг 1, Шаг 2, Шаг 3, Шаг 4) Проект 2 (Шаг 1, Шаг 2, Шаг 3, Шаг 4)

Я использую ListView, но я не знаю, что делать, потому что в моем шаге есть идентификатор проекта. Так как же сортировать шаги по проекту?

class ProjectList(ListView):
model = Project 
template_name ='project/index.html'

Нужно ли создавать набор запросов, если так, что я должен написать?

queryset = setp.objects.filter(project_id='?')

Я думаю, что, возможно, я сделал что-то не так с внешним ключом, и, возможно, мне следует поставить задачу в проекте.

Я надеюсь, вы понимаете, что я хочу сделать, и спасибо читать меня:)

1 Ответ

2 голосов
/ 06 января 2020
{% for obj in object_list %}
   <h1>{{ obj.title }}</h1>
   {% for step in obj.step_set.all %}
      <p>{{ step.title }}</p>
   {% endfor %}
{% endfor %}

вы можете сделать это в своих шаблонах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...