如何在 Django 模板中輸出 "{{"
阿新 • • 發佈:2020-01-30
起步
隨著 javascript 的壯大,前端也要使用自己的模板引擎了。若變數使用{{ 包裹的形式,而{{ 又會被 Django 模板引擎解析。導致{{ 無法輸出到前端,這個時候應該怎麼處理?大概有三種方式解決。
方法一:使用templatetag 標籤
這個官方給出的解決方案,標籤也是內建的:
{% templatetag openvariable %} variable {% templatetag closevariable %}
輸出到前端為:{{ variable }} 它能在渲染後的內容前後加上標籤。比如:
{% templatetag openvariable %} variable || {{ count }} {% templatetag closevariable %}
渲染為:{{ variable || 90 }} ,可以看到templatetag 標籤的內容會被解析,然後再將得到的解析結果包裹{{ ,因此這個方法的自由度很高。
方法二:使用verbatim 臨時關閉模板引擎
標籤verbatim 也是內建標籤,它的作用是原樣輸出模板內容:
{% verbatim %}{{ variable }}{% endverbatim %}
渲染結果為:{{ variable }} 。
方法三:使用自定義標籤
建立標籤函式:
@register.simple_tag() def double_brace(text): return "{{ %s }}" % text
模板中使用:
{% double_brace "variable" %}
渲染結果:{{ variable }} 。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。