我想为packages数组中的每个元素创建一个包。如果包属于一种类型,则创建一个不同的行。
比方说,我有包裹:A,B,C,D,A2,B3,C6,D8。 A和A2将排成一行; B和B3将位于不同的行,依此类推。
试图为包中的每个包创建一个for循环,并在index0%2 == 0时循环;
代码看起来像这样
<div class="dashboard">
<div class="row">
<div class="container margin-bottom-60">
<h2>boom</h2>
<h4>lorem</h4>
<br>
{% for package in packages %}
{% if loop.index0 % 2 == 0 %}
<div class="col-md-4">
<div class="packages-backend-elment">
<div class="col-md-12">
<h3>{{ package.title }}</h3>
<span>{{ package.shortTitle }}</span>
<div class="price">
{{ package.price }}
</div>
<div class="description">
{{ package.shortDescription | raw }}
</div>
<div class="buttons">
<a href="#">
<button type="button" class="btn-6 btn ink-reaction btn-flat dropdown-toggle paymentRequestBtn" data-urlaction="/employee/payment-requests/{{ package.id }}"></button>
</a>
<a href="#">
<button type="button" class="btn-6 btn ink-reaction btn-flat dropdown-toggle show-packages-details"></button>
</a>
</div>
</div>
</div>
</div>
{% endif %}
{% endfor %}
</div>
</div>
</div>
答案 0 :(得分:1)
您将需要存储key-value array中已经存在的列。它将从一个空数组开始,然后您将loop遍历项目check whether their value exists in the key-value array。如果是这样,请add the new value到已经创建的值,该值应该是一个数组。完成此操作后,将有一个键值数组,每个键代表一列,每个值代表列中的项数组。您将有两个嵌套循环。外循环将循环列。内部循环将循环这些值。并且您将需要根据需要定义要显示的HTML。