循环并为不同类型的包制作不同的列
Posted
技术标签:
【中文标题】循环并为不同类型的包制作不同的列【英文标题】:Loop and make diffrent column for diffrent kind of packages 【发布时间】:2019-10-25 23:13:59 【问题描述】:我想为 packages 数组中的每个元素创建一个包。如果一个包属于一个类型,则创建不同的行。
假设我有包:A、B、C、D、A2、B3、C6、D8。 A 和 A2 将是一行; B 和 B3 将是不同的行,依此类推。
尝试为packages中的每个包做一个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>
【问题讨论】:
你能解释得更好吗?我不明白你想要什么。 【参考方案1】:您需要将已存在的列存储在key-value array 中。它会从一个空数组开始,然后您将通过您的项目loop check whether their value exists in the key-value array。如果是这样,add the new value 到已经创建的值,它应该是一个数组。完成此操作后,您将拥有一个键值数组,每个键代表一列,每个值代表该列中的项目数组。您将有两个嵌套循环。外循环将循环列。内部循环将循环这些值。您需要根据需要定义要显示的 html。
【讨论】:
以上是关于循环并为不同类型的包制作不同的列的主要内容,如果未能解决你的问题,请参考以下文章