Как отобразить данные в карточке карусели — начальная загрузка

#python #html #django #django-views #bootstrap-5

#питон #HTML #джанго #джанго-просмотры #начальная загрузка-5

Вопрос:

Я использую bootstrap 5.0 и пытаюсь отобразить название книги на карточке, но это неэффективно.

Моя карусель в html

 {% block content %} lt;div id="carouselExampleIndicators" class="carousel slide" data-bs-ride="carousel"gt;  lt;div class="carousel-indicators"gt;  lt;button type="button" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"gt;lt;/buttongt;  lt;button type="button" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="1" aria-label="Slide 2"gt;lt;/buttongt;  lt;button type="button" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="2" aria-label="Slide 3"gt;lt;/buttongt;  lt;/divgt;  lt;div class="carousel-inner" style="background:gray; color:white; height:300px; position:relative"gt;  lt;div class="carousel-item active"gt;  lt;div class="container" style="position:absolute; right:0; padding-top:150px; padding-bottom:50px"gt;  {% for book in obj %}  lt;h1gt;{{book.title}}lt;/h1gt;  lt;pgt;Some first text to testlt;/pgt;  lt;a href="#" class="btn btn-lg btn-primary"gt;Read morelt;/agt;  {% endfor %}  lt;/divgt;  lt;img src="/assets/media/book_images/BookDefault.png" class="d-block w-100" alt="..."gt;  lt;/divgt;  lt;/divgt;  lt;button class="carousel-control-prev" type="button" data-bs-target="#carouselExampleIndicators"  data-bs-slide="prev"gt;  lt;span class="carousel-control-prev-icon" aria-hidden="true"gt;lt;/spangt;  lt;span class="visually-hidden"gt;Previouslt;/spangt;  lt;/buttongt;  lt;button class="carousel-control-next" type="button" data-bs-target="#carouselExampleIndicators"  data-bs-slide="next"gt;  lt;span class="carousel-control-next-icon" aria-hidden="true"gt;lt;/spangt;  lt;span class="visually-hidden"gt;Nextlt;/spangt;  lt;/buttongt; lt;/divgt; {% endblock %}  

и мой пример метода

 def display_book(request):  obj = Book.objects.get(1)  return render(request, 'templates/carousel_1.html', {'obj': obj})   

Все, что находится в цикле for, не отображается.

Структура моего проекта:

 WebBook |-accounts |-books |--views.py with method |-templates |--carousel_1.html with my carousel  

Я искал во многих местах, но ни один из методов не сработал. Не могли бы вы помочь?

Ответ №1:

Я не понимаю, почему используется get(1), но если вам нужно получить весь объект и использовать в шаблоне for on, вам следует изменить код модели на obj =Book.objects.all()

Комментарии:

1. Я перепробовал много вещей. Я тоже использовал ваш пример, и это не сработало.