flask jinja2 变量的变量

flask jinja2 variable of variable

我正在尝试使用以下代码访问 jinja2 中对象的变量:

{% for row in rows.items %}
  <tr>
    {% for column in model_settings['table_columns'] %}
      <td>
        <p>{{ row.column }}</p>
      </td>
    {% endfor %}
  </tr>
{% endfor %}

我想要的是如果列是用户名我希望它给我 row.username。不好意思的解释。

Jinja2 有内置的 attr 过滤器来访问对象的属性。属性的名称可以是静态字符串,或者在您的情况下:存储在变量中的字符串:

{% for row in rows.items %}
  <tr>
    {% for column in model_settings['table_columns'] %}
      <td>
        <p>{{ row|attr(column) }}</p>
      </td>
    {% endfor %}
  </tr>
{% endfor %}