我有一個模板接收列表上下文變量tags_list。我需要遍歷這個列表中的模板是這樣的「插入」標籤:包含模板標籤的Django模板變量,前{{{%some_tag%}}}
{% for tag in tags_list %}
{{ tag.tag }}
{% endfor %}
當這使得它返回tag.tag的文本值,「{%tagxxx%}」,而不是渲染標籤。
如何讓模板渲染呈現上下文變量的值?或者,是否有一個過濾器,一種逆向逐字,會導致上下文變量的值被渲染?
更新背景
TAGS_LIST通過涉及從表/模型領域的一些用戶提供的文本的EXEC一個相當複雜的過程中產生。真正的模板的相關部分看起來是這樣的:
{% for graph_row in graph_rows %}
<div class="row">
{% for graph in graph_row %}
<div class="col-md-{{ graph.width }}">
{{ graph.graph }}
</div>
{% endfor %}
</div>
{% endfor %}
圖中的值是這樣的:{ '圖形': '{%餅圖數據1%}', '寬度':3}
註上下文變量graph_rows中條目的順序與行中圖的順序相同,因爲它決定了頁面上圖的位置。保持此順序對於該方案正常工作至關重要。
目前,查看功能只是做一個{%include ...%}來獲取上面的模板段以正確的順序進行渲染。這種方法簡單而乾淨。
我可以像視圖一樣在視圖函數中執行一個模板渲染,但這會讓設計變得複雜一些,我希望避免這樣做,如果有一種簡單的方法來觸發{{graph .graph}}。請注意,通過將渲染移動到視圖中,我無法輕鬆地從任意位置(特別是表格字段)獲取模板。
請張貼您的標籤型號代碼。 –
你的意思是'tag.tag'的值是'{%tagxxx%]',你想要渲染?這是不可能的。 (至少不是默認情況下...) – rednaw
你想迭代這個列表'插入'標籤,所以它在views.py可能會更好 – WeizhongTu