2016-11-23 62 views
2

我正在嘗試使用Django模板來循環一組記錄,但停下來一小段,然後以不同的方式處理最後一條記錄。所以我們可以說我有50條記錄 - 我想循環1到49,然後停止,然後在循環外面處理第50條記錄。我想創建如何使用Django控制循環

[[date, var2],[date, var2],..[date, var2]*]; 

我使用:

data.addRows([ 
     {% for data in mydata %} 
     [{{data.date}},{{data.var2}}], 
     {% endfor %} 
    ]); 

我的目標是不包含逗號(由*表示),但保持必要的形式。任何幫助,將不勝感激。謝謝。

回答

1

您正在尋找的是forloop.last,它可以完全在循環內完成這項任務。

data.addRows([ 
     {% for data in mydata %} 
     {% if forloop.last %} 
      [{{data.date}},{{data.var2}}] 
     {% else %} 
      [{{data.date}},{{data.var2}}], 
     {% endif %} 
     {% endfor %} 
    ]); 

還有一個替代方案中,過濾器last它返回一個列表上的最後一個項目,但上述方法是這樣做的更常規的方式。

+0

謝謝,e4c5,這正是我所需要的。 – beliskna

+0

很高興得到了幫助 – e4c5