Как зациклить объекты в html

Я хочу перебирать категории в моем html. Я делаю фильтр, который будет показывать все категории, но я не могу заставить мои {% for %} работать Мне нужна помощь Вот мой код. Спрашивайте, если есть еще какая-либо информация, необходимая для решения этой проблемы.

HTML:

<div class="filter-box">

<h1>Filter</h1><hr>
{% for category in categorys%}
  <p class="checkbox-text">Hello</p>
  <h1>AAAAAAAAAAAAAAA</h1>
{% endfor %}

</div>

Просмотров:

def category_all(request):
categorys = Category.objects.all()
return render(request, "product/dashboard_test.html", {"names": categorys})
    

Модели:

class Category(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
name = models.CharField(max_length=255, blank=True, null=True)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)

Похоже, что вы передаете в шаблон переменную "names", а затем в шаблоне пытаетесь вызвать ее "categorys"
. Измените эту строку:

return render(request, "product/dashboard_test.html", {"names": categorys})

на это:

return render(request, "product/dashboard_test.html", {"categorys": categorys})

Также categorys пишется как категории, но это не влияет на ваш код

Попробуйте следующий код, он должен сработать для вас.

Код:

Код Python:

def category_all(request):
    categories = Category.objects.all()
    context = {
        'categories': categories
    }
    return render(request, "product/dashboard_test.html", context=context)

HTML код:

<div class="filter-box">

<h1>Filter</h1><hr>
{% for category in categories%}
  <p class="checkbox-text">Hello</p>
  <h1>AAAAAAAAAAAAAAA</h1>
{% endfor %}

</div>

Пояснения:

{"names": categorys} эта реализация не является правильной.

Вернуться на верх