我正在使用的代码:
{% for row in all_rows %}
<tr>
{% for names in all_fields_names %}
<td> {% getattr(row, names) %} </td>
{% endfor %}
</tr>
{% endfor %}
我收到错误:
'getattr(row(,",预期为"空"或"endfor">
我试过:
{% for row, names in (all_rows, all_fields_names) %}
<tr>
<td> {% getattr(row, names) %} </td>
</tr>
{% endfor %}
没有成功。有什么想法吗?
您不能在模板中调用这样的函数。您需要创建自定义模板标记。
自定义模板标签:
@register.simple_tag
def getattr(row, field_name, default=None):
return getattr(row, field_name, default)
在模板中调用它,如下所示:
{% for row, names in (all_rows, all_fields_names) %}
<tr>
<td> {% getattr row names %} </td>
</tr>
{% endfor %}