Доступ к запросу внешнего ключа

У меня следующая модель:

class Exercise(models.Model):
    name = models.CharField(max_length = 30, blank=True, null=True)
class Breakdown(models.Model):
    exercise = models.ForeignKey(Exercise, on_delete=models.CASCADE, related_name='breakdowns',blank=True, null=True)

Мой вопрос В представлениях как я могу зациклить разбиение на части внутри упражнения.

Вот что я пробовал:

class page_details(DetailView):
    model = Workout
    template_name = 'app/page.html'
    context_object_name = 'workout'

    def get_context_data(self, **kwargs):
        exercises = Exercise.objects.filter(workout_id=self.object)
        for e in exercises.Breakdown:
            print(e)

Я продолжаю получать AttributeError: 'QuerySet' object has no attribute 'Breakdown'

Мой вопрос, как я могу получить доступ к этим данным.

Если вы хотите выполнять итерации над значениями вторичной модели поверх выбранных значений первичной модели. В первичной модели по умолчанию создается специальное свойство (объект) с именем secondary model_set. В вашем случае, например, (учитывая, что вы действительно получили упражнения):

exercises = Exercise.objects.filter(workout_id=self.object)
for e in exercises.breakdown_set.all():
    print(e)
Вернуться на верх