2 回答
TA贡献1809条经验 获得超8个赞
首先,我们在将数据发送到模板之前按组对数据进行分组:
from itertools import groupby
grouped = groupby(data, key=lambda _: _.group)
然后我们稍微修改模板以迭代组和值:
{% for group, values in grouped %}
<div class="panel-group">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" href="#{{ group }}">{{ group }}</a>
</h4>
</div>
<div id="{{ group }}" class="panel-collapse collapse">
<ul class="list-group" style="margin-left:30px">
{% for i in values %}
<div class="row">
<li class="list-group-item">{{ i.value }}</li>
</div>
{% endfor %}
</ul>
</div>
</div>
</div>
{% endfor %}
</div>
在每次迭代中, group 将是不同的, values 是一个迭代器,原始数据对应于每个不同的 group。
这将为每个组创建单个标签,并为每个组内的每个值创建单独的条目。
添加回答
举报