У меня есть таблица, отображаемая внутри разборного компонента карты в стиле гармошки, который содержит три элемента Field
(по одному на <td>
). Используя forloop.counter
, я пытаюсь отобразить каждый obj.frequency
как складной заголовок со всеми связанными элементами obj.product
и obj.price
, отображаемыми в пределах collapsible-body
.
Я понимаю, что текущая раскладка должна быть СУХОЙ, используя только один раз цикл object.rate_set.all
. Я оставил два obj forloops, так как это единственный способ получить данные в разделе с откидным телом карты, даже если данные разделены неправильно.
Вопрос :
Как я могу отобразить данные, связанные с frequency
внутри тела карты с выводом frequency
obj в качестве заголовка?
В дополнение к моему шаблону ниже приведен скриншот моего браузера для уточнения, если это необходимо
Мой шаблон:
<div class="card">
<div class="card-body">
<ul class="collapsible popout">
{% for obj in object.rate_set.all %}
<!-- -------------------------------------------------
displays each `frequency` obj in its own accordion card
as the header. output: 1x, 3x, 6x, 12x, 24x..
------------------------------------------------- -->
{% if forloop.counter|divisibleby:3 %}
<li>
<div class="collapsible-header“>{{ obj.frequency }}</div>
<div class ="collapsible-body">
{% endif %}
{% endfor %}
<div class="table-responsive card-text">
<table>
<thead>
<tr>
<th>Product</th>
<th>Rate</th>
</tr>
</thead>
<tbody>
<!-- -----------------------------------
displays all of the obj's in the last
accordion card (24x)
------------------------------------- -->
{% for obj in object.rate_set.all %}
<tr>
<td> {{ obj.product }} </a>
<td>${{ obj.price }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div> <!–- end of ‘collapsible-body' -->
</li>
</ul>
</div>
</div>
![enter image description here](https://i.stack.imgur.com/vXWQp.png)