jinja2迭代字符串数组

时间:2019-10-31 16:34:30

标签: jinja2

我正在使用jinja2和python。

一切正常,但表格是基于一串数组打印的,这是模板

<table>
  <tr>
    <th> {{table.title}}</th>
  </tr>
  <tr>
    {% for value in table.values %}
          <td> {{ value }} </td>
    {% endfor %}
  </tr>
</table>

表在pyton中的数据中定义:

data['table'] = {
    'title': 'Title',
     'values': ['test','test2']
}
templateVars = data.copy()
templateEnv = jinja2.Environment(
    loader=jinja2.FileSystemLoader(f'{package_directory}/assets/templates/'))
outputText = template.render(templateVars)

执行时出现错误:

{% for value in table.values %}
TypeError: 'builtin_function_or_method' object is not iterable

我找不到错误,因为我创建了一个列表,它应该是可迭代的。我将相同的代码复制到python,并且可以正常工作。

1 个答案:

答案 0 :(得分:0)

我解决了我的问题,那是因为我使用“值”作为键,并且这是一个保留字,为table_rows对其进行了更改