2013-07-26 32 views
1

我有,當我使用Django模板的一個問題:Django的:無效的塊標籤:「單詞表[關鍵]」,預計「空」或「ENDFOR」

{% for key in wordList %}   
    <li><a href="#" data-weight={% wordList[key] %} >{{ key }}</a></li> 
{% endfor %} 

的Django會說:無效的塊標籤: 'wordList [key]',預計'空'或'endfor'。在這裏,wordList是一個字典,例如:{'Fish':19,'Chips':5}

如何在html語句中插入django塊?我想他們是這樣的:

<li><a href="/fish" data-weight="60">Fish</a></li> 
    <li><a href="/chips" data-weight="50">Chips</a></li> 

如何用雙引號「」標記?

非常感謝。

回答

0

迭代直接在鍵/值對:

{% for key, value in wordList.items %} 
    <li><a href="#" data-weight="{{ value }}">{{ key }}</a></li> 
{% endfor %} 

你可以做字典式查找與點語法在模板中,但只有當你知道的關鍵,而不是一個模板變量擁有它。

+0

謝謝!我能否在模板中進行一些計算,例如{%size = value *(20/maxnum)%}? – Robert

+0

非常小的計算 - 主要是比較,但內置的'widthratio'可以做一些可能與該示例相關的數學。對於更高級的東西,您通常在視圖中進行計算,添加模型方法來輸出它,或者編寫自定義模板標記。 https://docs.djangoproject.com/en/dev/ref/templates/builtins/獲取完整文檔。 –

相關問題