渲染时捕获 TypeError:'int' 对象在 django 模板中不可迭代

Aam*_*amy 4 python django for-loop django-templates typeerror

我试图list_length在 for 循环中迭代 a 。是list_length一个int作为上下文变量传递给模板的对象。但是当我尝试这样做时,它给出了这个typeError。有人可以帮忙吗?

{% for i in list_length %}
    <tr>
        <td>{{ i }}</td>
    </tr>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

Nam*_*ani 5

我认为您正在尝试打印表中每一行的索引。为此,您必须迭代索引列表。在 django 视图中创建此列表

list = []
for i in range(0,list_length):
    list.append(i)
Run Code Online (Sandbox Code Playgroud)

然后将此列表传递到您的 django 模板中并对其进行迭代

{% for i in list %}
    <tr>
        <td>{{ i }}</td>
    </tr>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

这应该对你有用。