[英]How do I avoid duplicating strings in my Django templates?
我想知道如何在我的模板中復制幾個字符串。 具體來說,我希望在我的頁面頂部創建一個目錄類型的導航,其中包含指向更遠內容的錨點鏈接(如http://www.google.com/transparencyreport/faq/ )。 我希望鏈接具有與更遠的部分標題相同的文本。
我已經考慮過使用{%with%},但是在{%with%}塊中嵌入所有內容似乎很笨重。
類似於Whats在django模板中復制數據的最佳方法? ,但我沒有在任何地方繼承此模板,因此使用{%block%}並不是一個真正的選擇。
這似乎只是使用您從視圖傳遞的模板變量(例如{{ link_name }}
)。
您也可以使用包含另一個模板的模板包含標記以及您的重復信息。
在您的視圖中,您可能會破壞您的內容,以便可以單獨訪問標題作為模板變量。 您可以將與每個標題關聯的信息存儲為dicts列表:
page_content = [
{
'id':'header1',
'header': 'Text for Header 1'
'content' : 'Content Beneath header 1'
},
]
然后,在您的模板中,您可以使用以下內容生成內容表:
{% for d in page_content %}
<a href="#{{ d.id }}">{{ d.header }}</a>
{% endfor %}
雖然您的頁面內容看起來像這樣:
{% for d in page_content %}
<h1 id="#{{ d.id }}">{{ d.header }}</h1><p>{{ d.content }}</p>
{% endfor %}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.