我正在开发一个Web应用程序,但我遇到了一个小问题,我从数据库收集了数据,并将记录显示到一个datatable中,我的问题是我不能只拥有一个表,客户希望我根据Integer在一列中的内容将表分成多个表(omloopnummer)。
到目前为止,我得到的最好的结果是使用下面的代码,它将把表拆分成4个表,如果数据库中的整数为1,2,3,4,那么它将在每个表中只显示1条记录,而它应该更多。
如果有任何其他简单的解决办法,而不是使用树枝,我会很乐意尝试它。
<div id="index" class="table-responsive">
{% set i = 1 %}
{% for duel in duels %}
{% if duel.omloopNummer == i %}
{% set i = i + 1 %}
<table id="" class="table display-" style="width: 90%; margin-top: 30px">
<thead>
<tr>
<th>Omloop</th>
<th>Team 1</th>
<th>vs</th>
<th>Team 2</th>
<th>Acties</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ duel.omloopNummer }}</td>
<td>{{ duel.team1 }}</td>
<td>vs</td>
<td>{{ duel.team2 }}</td>
<td>{{ include('duel/_delete_form.html.twig') }}</td>
</tr>
</tbody>
</table>
{% endif %}
{% endfor %}
2条答案
按热度按时间qlvxas9a1#
您可以使用php进行分组
Duels
通过omloopNummer
在传递到细枝之前,在控制器中。然后在twig中,在排序的数组中循环,为每个非空组和每个组内部构建一个表
tbody
在小组中循环。llycmphe2#
您正在循环查看决斗记录,但每个omloopnumber只显示一条记录。
您是否可以尝试将决斗记录分组到具有相同omloopnumber的数组中,然后将每个数组作为一个平板电脑进行渲染。
或者,当从数据库中获取数据时,您可以按omloopnumber排序吗?然后,您可以在一个循环中执行此操作,每次omloopnumber增加时,您都会启动一个新表。