2
Django的新手和第一次使用模板引擎。我的問題是...Django模板標籤和include for nav
我在我的base.html中有一個導航div。現在在其他語言中,我會使用包含html的nav元素。在Django中,我看到我們有一種叫做模板標籤的東西。所以我應該使用模板標籤來顯示像導航或舊學校包括(我相信Django也支持)的演示文稿元素?
此外,爲了保持這個問題,一個例子會很有用。
謝謝
Django的新手和第一次使用模板引擎。我的問題是...Django模板標籤和include for nav
我在我的base.html中有一個導航div。現在在其他語言中,我會使用包含html的nav元素。在Django中,我看到我們有一種叫做模板標籤的東西。所以我應該使用模板標籤來顯示像導航或舊學校包括(我相信Django也支持)的演示文稿元素?
此外,爲了保持這個問題,一個例子會很有用。
謝謝
模板標籤實際上是應用特殊處理來實現您想要的輸出。使用模板標籤可以訪問Python語言的所有功能。 Django模板語言更簡單。
我建議你要堅持使用include而不是寫模板標籤。這將更容易閱讀。請記住,您應該在視圖中(或模板/模板標籤之外的某處)生成變量列表。
def your_view(request):
#...
nav_items = Category.objects.filter(include_in_nav=True)
return render(request, 'your_page.html', {'nav_items': nav_items})
然後在your_page.html你打算怎麼辦 -
{% include 'nav.html' %}
然後nav.html
會是這樣的 -
<nav>
{% for item in nav_items %}
<a href="{% url cat_page item %}>{{ item.title }}</a>
{% endfor %}
</nav>
看一看在文檔上templates和custom template tags 。
謝謝你寫的這個寫得很好的答案,完美只是我之後的信息 – jason 2013-02-27 11:28:17