【发布时间】:2019-08-24 08:31:00
【问题描述】:
我正在使用 Laravel 并尝试从查询中填充 HTML 表。数据库中的表包含id、user 和shift 等列。大约有 100 个条目,shift 列将包含字母 A、B、C 或 D。我想将它输出到单个 HTML 表中,以便在循环时,输出表中的第一列将只包含具有该值的 A 的条目,第二个 B 的条目,依此类推。
这是我的查询:
Shift::orderBy('shift', 'ASC')
->get();
这当然会按字母顺序排序,然后当我循环使用它时:
...
<tbody>
@foreach ($shifts as $shift)
<tr>
<td>{{ $shift->id }}</td>
...
</tr>
@endforeach
</tbody>
...
或类似的变体,我已经尝试了很多,它将遍历所有带有A 的条目并在表格中创建这些单元格/行,然后从B 开始。但是到那时,因为已经创建了这些,B 条目开始了,但是许多 A 条目已经关闭。
我已经遍历它并创建了四个单独的表,但我更愿意将它合二为一。我想用 Laravel Excel 导出表格,如果它们是单独的表格,它只是将它们堆叠起来,但我希望它们并排。无论如何,这就是我的意思和想要的(带有字母的行将是决赛表中的其他信息):
我错过了什么?我觉得我做的事情不是很简单。谢谢你的帮助。
【问题讨论】:
-
您可能需要重新评估您存储和检索数据的方式。但是如果你必须实现这个目标,听起来你需要将它们分成 4 个数组,然后将它们重新组合在一起,每个数组值包含一个嵌套数组,其中包含 A-D 的潜在值。
-
是的,我想我必须改变一些东西。我宁愿不这样做,因为这只是为了在将其导出到电子表格并循环创建 4 个表时显示得更好。但这是另一个话题。
标签: php html laravel html-table