2016-07-14 60 views
0

我在django模板中使用for循環來迭代列表,我的目標是每3個值之後顯示一個字符串。在模板標記中迭代值的中間插入一個值

這是我的名單

myList = [1,2,3,4,5,6,7,8,9] 

這是我的代碼

{% for a in myList %} 

{{a}} 
{% if forloop.counter == 3%} 
<div>String</div> 

{% endif %} 

{% endfor %} 

我想有像

1 2 3 string 4 5 6 string 7 8 9 string 
+3

您可以使用{%如果forloop.counter | divisibleby: 「3」 %} – kapilsdv

回答

1

你可以做勸卡皮爾Sachdev

{% for a in myList %} 
    {{ a }} 
    {% if forloop.counter|divisibleby:3 %} 
     <div>String</div> 
    {% endif %} 
{% endfor %} 

,或者您可以使用cycle tag

{% for a in myList %} 
    {{ a }} 
    {% cycle '' '' '<div>String</div>' %} 
{% endfor %} 
+1

的'cycle'標籤將在Django 1.10刪除。如果你計劃更新到更新版本的Django,我建議不要這樣做。 – Justin

相關問題