вывод связанных моделей в ListView

подскажите что я упустил. Только начал изучать django. Хочу выводить в родительской модели связанные поля из дочерней. models.py

class Category(models.Model):
    name_category = models.CharField(verbose_name = 'Название категории', max_length = 100, null=True)
    image = models.ImageField(null=True, blank=True, upload_to="media/", verbose_name='Изображение')

    def __str__(self):
        return self.name_category


class Subcategory(models.Model):
    category = models.ForeignKey(Category, on_delete=models.CASCADE, verbose_name='категория', related_name='photos')
    name_subcategory = models.CharField(verbose_name = 'Название подкатегории', max_length = 100, null=True)
    image = models.ImageField(null=True, blank=True, upload_to="media/", verbose_name='Изображение')
    url = models.SlugField(max_length=160, unique=True, null=True)

    def __str__(self):
        return self.name_subcategory

views.py

from django.shortcuts import render
from django.views.generic import ListView

from .models import Category,Subcategory

class CategoryView(ListView):
    """список категорий"""
    model = Category

в шаблоне(раньше использовал только функции и все выводилось примерно так)

{% extends 'base.html' %}
{% block content %} 
{% for category in category_list %}
{{category.name_category}}
<img src="{{category.image.url}}" width="100px" height="100px">
   {% for sub in category.subcategory_set.all %}
      {{ sub }}
   {% endfor %}
{% endfor %}
{% endblock %}

Но под категории не выводятся


Ответы (1 шт):

Автор решения: lleballex

Я не вижу у тебя нигде subcategory_set, как ты указал в шаблоне. Если посмотреть в моделях, то related_name ты указывал, как photos. Может попробовать так: {% for sub in category.photos.all %}

→ Ссылка