我的模板中有以下代码:
{% for object in object_list %}
{% with game=object.game %}
{% for category in object.game.objectmeta.categories.all %}
{% if category.name|title == 'Puzzle' %}
{% if forloop.first %}
<div class='side_header' id='dark_gamelink_side'>
<a class='actionheader' href=""></a>
</div>
{% endif %}
<div class='game_link' id='dark_gamelink'>
<a class='img_link' href="{% url game_view game.id game.title|slugify %}">
<img class='game_img' src='{{game|thumb:"78x65"}}' alt='{{game.title}}' />
</a>
<div class='top_game_title' style='padding:0'>
<a style='position:relative; top:-3px' id='yellowlink' href="{% url game_view game.id game.title|slugify %}">{{game.title}} -- {{category.name|title}}</a>
<img style='position:relative; top:1px; margin-left:12px' src='thumbsup.gif' width='17' height='18'/>
<span style='position:relative; top:-3px; font-size:10px; color:white'>99%</span>
</div>
{% if game.description|length > 65 %}
{{ game.description|slice:"65" }}...
{% else %}
{{ game.description }}
{% endif %}
</div>
{% if forloop.counter0 == 3 %}
<div class='more_games'><br/></div><div class='side_header' id='dark_gamelink_side'><a class='adventureheader' href=adventure.htm></a></div>
{% endif %}
{% endif %}
{%endfor%}
{% endwith %}
{% endfor %}
现在我正在使用这个:
{% if forloop.first %}
<div class='side_header' id='dark_gamelink_side'>
<a class='actionheader' href=""></a>
</div>
{% endif %}
尝试检测这是否是紧邻其之前的 for 循环的第一次迭代,而不是父 for 循环。换句话说,我试图检测它是否是这个 for 循环的第一次迭代:
{% for category in object.game.objectmeta.categories.all %}
不是这个:
{% for object in object_list %}
现在的方式不起作用,因为它显示的是:
<div class='side_header' id='dark_gamelink_side'>
<a class='actionheader' href=""></a>
</div>
两次。如何检测嵌套 for 循环的第一次迭代?
Edited:
我从未使用过这些变量,但我认为forloop.parentloop.first
应该这样做。如果不是怪我误解了Djangodocs https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#for. ;-)
您应该检查是否位于父循环内,然后检查是否位于第一个嵌套节点内。请尝试这个修改后的模板。你应该给出正确的方向。
{% if forloop.parentloop.first %}
I am in the first loop of the parent
{% else %}
{% if forloop.first %}
<div class='side_header' id='dark_gamelink_side'>
<a class='actionheader' href=""></a>
</div>
{% endif %}
{% endif %}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)