【问题标题】:jinja2 loop for indexed names用于索引名称的 jinja2 循环
【发布时间】:2019-07-29 09:17:26
【问题描述】:

我有以下词典列表:

servers:
- name: web
  number: 3
- name: lb
  number: 2

我需要 jinja2 模板的以下输出:

web_1
web_2
web_3
lb_1
lb_2

我已经尝试在 stackoverflow 上查看 jinja2 手册或其他一些示例,但我发现对我的用例没有任何用处。

{% for server in servers %}
{{ server.name }}_index
{% endfor %}

上面的代码不起作用。

【问题讨论】:

  • 没有代码(只有 jinja 模板)。什么“不起作用”?

标签: python loops jinja2


【解决方案1】:

您只需要在 number 字段上添加额外的循环:

{% for server in servers %}
{%- for index in range(server.number) %}
{{- server.name }}_{{ index + 1 }}
{% endfor %}
{%- endfor %}

第一个循环迭代服务器条目,第二个循环在指定范围(number 字段)内生成索引。

【讨论】:

    猜你喜欢
    • 2020-06-30
    • 2020-03-22
    • 1970-01-01
    • 2015-06-30
    • 2017-07-10
    • 2020-06-09
    • 1970-01-01
    • 2021-07-20
    • 1970-01-01
    相关资源
    最近更新 更多