【问题标题】:How to write correctly jinja2 template using for loop ,如何使用 for 循环正确编写 jinja2 模板,
【发布时间】:2020-10-10 13:28:08
【问题描述】:

我有以下来自一些查询的数据框:

SYS   ID          TYPE          Number
SAP IX_sys  IX_sys_daily_FICO   83646
SAP IX_sys  IX_sys_daily_FICO   326
SAP IX_sys  IX_sys_daily_FICO    19
SAP IX_sys  IX_sys_daily_FICO   628
SAP IX_sys  IX_sys_daily_FICO   574
SAP IX_sys  IX_sys_daily_FICO   623

我在 python 代码中所做的是:

first = df_ora['SYS']
second = df_ora['ID']
Third=df_ora['TYPE']
Four=df_ora['Number']

我传递给了模板 jinja2 像:

<tbody>
  {% for i in first %}
    <tr class="table-active">
    
        <td>{{ i}}</td>
    </tr>
        {% endfor %}


  </tbody>

这只是给了我第一列:

SAP
SAP
SAP
SAP
SAP
SAP

我如何将所有的值传递给想要的值:

SYS   ID          TYPE          Number
SAP IX_sys  IX_sys_daily_FICO   83646
SAP IX_sys  IX_sys_daily_FICO   326
SAP IX_sys  IX_sys_daily_FICO    19
SAP IX_sys  IX_sys_daily_FICO   628
SAP IX_sys  IX_sys_daily_FICO   574
SAP IX_sys  IX_sys_daily_FICO   623

任何想法,非常感谢任何可以帮助我的人。

【问题讨论】:

  • 所有列项都是 SAP,所以这是预期的输出,不是吗?
  • 不...实际上我需要扩展表格并拥有与所需相同的内容

标签: python templates jinja2


【解决方案1】:

试试这个:

<tbody>
  {% for i in range(0,first|length) %}
    <tr class="table-active">       
        <td>{{ first[i]}}</td>
        <td>{{ second[i]}}</td>
        <td>{{ Third[i]}}</td>
        <td>{{ Four[i]}}</td>
    </tr>
        {% endfor %}


  </tbody>

【讨论】:

  • ` {% for i in first|length %} TypeError: 'int' object is not iterable `
  • 你是个多么优秀的人,非常感谢,它的工作非常完美:)
  • 当然的伴侣:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-04-29
  • 1970-01-01
  • 1970-01-01
  • 2021-07-10
  • 1970-01-01
  • 1970-01-01
  • 2019-12-18
相关资源
最近更新 更多