Django - Forloop 未定义

Sup*_*der 2 django counter undefined

我一直在尝试使用 Django、Python、CSS 和 HTML 绘制棋盘。为此,我需要跟踪 for 循环中的迭代次数。我通读了Django 的文档,发现我应该使用forloop.counter.

当我forloop.counter在我的程序中使用时,我收到了一个jinja2.exceptions.UndefinedError说明forloop未定义的。我在 IDE 中卸载并重新安装了 Django 1.11.5 并收到了同样的错误。我安装了 Django 的开发版本并收到了同样的错误。

forloop.counter在一个单独的测试程序中检查了我的用法,但我仍然收到一个错误,说它forloop是未定义的。

Django 本身有错误吗?谢谢你。

下面是测试程序:

<div id="container">
   {% block main %}
        {% for item in length %}
            <p>{{ forloop.counter }}</p>
        {% endfor %}
   {% endblock %}
</div>
Run Code Online (Sandbox Code Playgroud)

Dan*_*man 9

该错误消息表明您使用的是 Jinja2 作为模板引擎,而不是 Django 自己的模板语言。您必须在您的设置文件中明确配置它。

在 Jinja2 中,您使用{{ loop.index }}- 请参阅文档

除非你有很好的理由,否则你应该恢复到标准的 Django 模板设置。