误解Django中的循环标签



我不确定我是否发现了错误,系统配置错误,或者只是误解了Django中的{%cycle%}模板标记。

本手册提供了以下示例代码:

{% cycle 'row1' 'row2' as rowcolors silent %}{# no value here #}
{% for o in some_list %}
    <tr class="{% cycle rowcolors %}">{# first value will be "row1" #}
        ...
    </tr>
{% endfor %}

它清楚地表明,第一个循环声明将不输出任何内容,随后的调用将是第一次迭代。

我遇到了以下问题:首先,第二个调用输出"row2",这在第二次调用中是预期的。其次,后续的{%cycle rowcolors%}调用也不输出任何内容!

我是完全误解了什么,还是标签没有按规定工作?

据我所知,代码是循环函数的docstring与实际文档中的代码示例不同。您应该使用{{ rowcolors }}来显示循环的文本。

其次,后续的{%cycle rowcolors%}调用也不输出任何内容!

来自文件:

在循环定义中使用静默关键字时,静默将自动应用于循环标记的所有后续使用。在中,以下模板将不输出任何内容,即使对{%cycle%}的第二次调用没有指定静默:

该段后面的代码示例似乎与您当前的问题类似。

最新更新