2017-09-15 84 views
0

我一直在尝试使用Django,Python,CSS和HTML绘制棋盘。为此,我需要跟踪我for循环中的迭代次数。我通读Django's documentation,看到我应该使用forloop.counterDjango - Forloop未定义

当我在我的程序中使用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> 

回答

2

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

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

除非你有一个很好的理由,你应该回到标准的Django模板设置。

+0

谢谢。我如何恢复到标准的Django模板? – SuperNovaCoder

+0

请参阅[文档](https://docs.djangoproject.com/en/1.11/topics/templates/#configuration)。 –