2010-01-28 85 views
1

我已經創建了一個將yaml文檔加載到python列表中的templatetag。在我的模板中,我有{% get_content_set %},這會轉儲原始列表數據。我希望能夠做的是一樣的東西如何從django templatetag訪問python列表?

{% for items in get_content_list %} 
     <h2>{{items.title}}</h2> 
{% endfor %}` 
+2

爲什麼你正在嘗試在這裏使用模板標籤?如果視圖可以爲標籤創建正確的上下文,那麼它可以創建一個帶有列表的上下文作爲正常處理的變量 – 2010-01-28 20:26:25

回答

-1

由於編寫複雜templatetags不是一件容易的事(當然,雖然記錄)我想借此{%和%}標籤源並適應它滿足我的需要,所以它看起來像

{% get_content_list as content % 
{% for items in content %} 
     <h2>{{items.title}}</h2> 
{% endfor %}` 
+0

準確地說我是如何運作的!謝謝! – starsurch 2010-01-28 23:03:18

3

如果該列表是一個Python變量X,然後將其添加到模板上下文context['X'] = X,然後你可以做

{% for items in X %} 
     {{ items.title }} 
{% endfor %} 

模板標記旨在呈現輸出,因此不會提供可供您使用的迭代列表。但是你不需要這樣做,因爲正常的上下文+ for循環很好。

+0

同意。模板標籤是這項工作的錯誤工具。 – jcdyer 2010-01-28 20:52:32