Ser*_*rov 5 python jinja2 flask
我有一个可变的城市名称列表,我想将它分成4列.我有一些解决方案,但它看起来不堪重负和肮脏.什么是最好最简单的方法?
我的解决方案在这里:
{% set cities_in_column = cities|length/4|int %}
{% set step=0 %}
<div class="four columns">
{% for city in cities|sort %}
{% if step > cities_in_column %}
{% set step = 0 %}
</div>
<div class="four columns">
{% endif %}
<h5><a href="/city/{{ city.url }}">{{ city.name }}</a> <span style="float:right;">({{ city.users_count }})</span></h5>
{% set step=step + 1 %}
{% endfor %}
</div>
Run Code Online (Sandbox Code Playgroud)
Sea*_*ira 11
您正在寻找slices过滤器:
{% for column in cities | sort | slice(4) -%}
<div class="four columns">
{%- for city in column -%}
<h5><a href="/city/{{ city.url}}">{{ city.name }}</a>
<span style="float:right;">({{ city.users_count }})</span></h5>
{%- endfor -%}
</div>
{%- endfor %}
Run Code Online (Sandbox Code Playgroud)
还有一个补充slices调用batch,它提供了运行n(而不是将迭代分成n组).
| 归档时间: |
|
| 查看次数: |
5194 次 |
| 最近记录: |