У меня есть модель Book
, которая содержит CharField: 'category'
, который описывает жанр книги, и я хочу отобразить информацию о книгах в соответствии с их жанром.
Я пробовал это:
{% for category in categories %}
<div class="row">
<div class="title-section mb-5 col-12">
<h2>Popular in {{category}}</h2>
</div>
</div>
<div class="row">
{% for book in books %}
{% if book.category == '{{category}}' %}
<div class="col-lg-4 col-md-6 item-entry mb-4">
<a href="#" class="product-item md-height bg-gray d-block">
<img src='/media/{{book.img}}' alt="Image" class="img-fluid">
</a>
<h2 class="item-title"><a href="#">{{ book.title }}</a></h2>
<strong class="item-price">Rs. {{ book.price }}</strong>
</div>
{% endif %}
{% endfor %}
</div>
{% endfor %}
models.py:
def main(request):
books = Book.objects.all()
categories = []
for book in books:
categories.append(book.category)
categories = list(set(categories))
return render(request, "index.html", {'books': books, 'categories': categories,})
Но это не работает, отображается только:
Популярное в художественной литературе
Популярное в мотивационном
Популярные в информативном
Популярные в подростковом
Популярные в автобиографии
Нет информации о каких-либо книг отображается.Я думаю, что проблема в if condition
, пожалуйста, помогите мне!