范围在 for 循环中不起作用

Posted

技术标签:

【中文标题】范围在 for 循环中不起作用【英文标题】:Range not working in for loop 【发布时间】:2018-07-13 16:34:33 【问题描述】:

我的 for 循环不工作,我不知道为什么。

这是循环:

% for i in range(text|length + images|length) %

textimages 是我从视图传递给模板的查询集。

我得到的错误是:

django.template.exceptions.TemplateSyntaxError: 'for' statements 应该使用格式'for x in y': for i in range(text|length + images|length)

这对我来说没有意义,因为在我看来这确实遵循错误建议的格式。

【问题讨论】:

【参考方案1】:
% for i in range((text|length) + (images|length)) %

这应该可以解决它。 用于其他目的。我在 jinja2 中遇到了自己的问题,之前没有使用过。我的循环是:

% for i in range(string1|length) %

它可以工作

【讨论】:

我已经尝试过了,它没有任何区别。我得到完全相同的错误。 django.template.exceptions.TemplateSyntaxError: 'for' statements should use the format 'for x in y': for i in range(text|length + images|length) 你也有 % endfor %?也可以尝试((文本|长度)+(图像|长度))。您还知道是否定义了 images|length 和 text|length 吗?尝试在某处显示 text|length 和 images|length 看看它显示什么 我有% endfor%。我试过显示text|lengthimages|length,它们都可以正常工作。我试过range((text|length) + (images|length)) 并得到与以前相同的错误。 检查这个answer 以及它是如何解决的。它可能会帮助你。 django似乎不支持。

以上是关于范围在 for 循环中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

简单的for循环在python中不起作用

条件For循环在批处理文件中不起作用

jQuery if 语句在 for 循环中不起作用

Liquid - if contains 语句在 for 循环中不起作用

for循环后的最后一个过程语句在pl sql中不起作用

for 循环中的代码在 ngOnInt() 中不起作用