Django - Forloop 未定义
Django - Forloop Undefined
我一直在尝试使用 Django、Python、CSS 和 HTML 绘制棋盘。为此,我需要跟踪 for 循环中的迭代次数。我通读了 Django's documentation 并发现我应该使用 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>
该错误消息表明您正在使用 Jinja2 作为模板引擎,而不是 Django 自己的模板语言。您必须在您的设置文件中明确配置它。
在 Jinja2 中,您使用 {{ loop.index }}
- 参见 the documentation。
除非你有很好的理由,否则你应该恢复到标准的 Django 模板设置。
我一直在尝试使用 Django、Python、CSS 和 HTML 绘制棋盘。为此,我需要跟踪 for 循环中的迭代次数。我通读了 Django's documentation 并发现我应该使用 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>
该错误消息表明您正在使用 Jinja2 作为模板引擎,而不是 Django 自己的模板语言。您必须在您的设置文件中明确配置它。
在 Jinja2 中,您使用 {{ loop.index }}
- 参见 the documentation。
除非你有很好的理由,否则你应该恢复到标准的 Django 模板设置。