Я пытаюсь создать аккордеон Bootstrap для списка элементов в базе данных Django. При отображении в настоящее время мой код будет сворачиваться и расширяться только для первого элемента в цикле for. Для других элементов, когда я нажимаю на них, первый элемент расширяется/сворачивается, а не элемент, на который нажимают. Пожалуйста, ищите решение.
<div class = "panel-group">
<div class = "panel panel-default">
{% for issue in issues %}
<div class = "panel-heading">
<div class = "panel-title">
<a data-toggle = "collapse" data-target = "#collapse1"><h3><i class = "fas fa-chevron-down"></i> {{ issue.title }}</h3></a>
</div>
</div>
<div id = "collapse1" class = "panel-collapse collapse">
<p><strong>Type: </strong>{{ issue.type }}</p>
<p class = "issue-description"><strong>Description: </strong>{{ issue.description }}</p>
<p><strong>Requested By: </strong>{{ issue.requested_by }}</p>
<p><strong>Date Created: </strong>{{ issue.date_created }}</p>
<p><strong>Status: </strong>{{ issue.status }}</p>
<p><strong>Date Completed: </strong>{{ issue.completed_date }}</p>
<p><strong>Upvotes: </strong>{{ issue.upvotes }}</p>
</div>
{% endfor %}
</div>
</div>
Вы перебираете проблемы, но все div имеют одинаковый идентификатор «collapse1». Вы должны сделать идентификатор div (и связанный data-target = "#collapse1") динамическим, используя, например, тип задачи или статус задачи или, возможно, какое-то другое уникальное свойство задачи. Рассмотрим этот фрагмент: <div id = "collapse-{{issue.id}}" class = "...">






Дайте вашему div уникальный идентификатор, например <div id = "collapse-{{ issue.pk }}" class = "panel-collapse collapse">, а также укажите его в data-target: data-target = "#collapse-{{ issue.pk }}"
Вопрос не о Python, вы должны удалить тег Python