久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

django 模版關(guān)閉轉(zhuǎn)義方式

瀏覽:238日期:2024-10-06 16:02:56

django 模版顯示的html中出現(xiàn)'類似的ascii字符,這是由于django對(duì)單引號(hào)進(jìn)行了轉(zhuǎn)義,可以通過關(guān)閉轉(zhuǎn)義解決html處理異常問題。

關(guān)閉django轉(zhuǎn)義的方法有如下兩種:

1.關(guān)閉單個(gè)模版變量的轉(zhuǎn)義:

利用'|safe' 過濾器告訴django這個(gè)變量不需要轉(zhuǎn)義, 如模版中:{{ data|sage }}

2.利用django模版標(biāo)記關(guān)閉html或js塊轉(zhuǎn)義

{% autoescape off %}

code..

{% endautoescape %}

補(bǔ)充知識(shí):Django使用mark_safe()和format_html()函數(shù)

django從view向template傳遞HTML字符串的時(shí)候,django默認(rèn)不渲染此HTML,原因是為了防止這段字符串里面有惡意攻擊的代碼。

如果需要渲染這段字符串,需要在view里這樣寫:

from django.utils.safestring import mark_safe def view(request): .... pageHtml = mark_safe('<a href=’#’>首頁</a>') ret = {'equit_cate_list':list,'count':count,'ecform':ecform,'page':page,'pageHtml':pageHtml} return render(request, 'list_equip_category.html',ret)

前端頁面直接使用{{pageHtml}}即可。

mark_safe這個(gè)函數(shù)就是確認(rèn)這段函數(shù)是安全的,不是惡意攻擊的。

adminx中定義的一些插件等都是用mark_safe()進(jìn)行渲染的。

django 模版關(guān)閉轉(zhuǎn)義方式

format_html和mark_safe非常類似,本質(zhì)還是調(diào)用mark_safe函數(shù),不同在于傳參方式,mark_safe直接傳遞完整的html字符串;

而format_html需要使用{}占位符:

format_html(’<span style='color:{};'>{}</span>’, color_code, obj.approval)

以上這篇django 模版關(guān)閉轉(zhuǎn)義方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Django
相關(guān)文章:
主站蜘蛛池模板: 双鸭山市| 白银市| 聂荣县| 永定县| 河曲县| 嵊泗县| 曲麻莱县| 永平县| 延长县| 黄梅县| 亳州市| 寿阳县| 徐闻县| 宁安市| 金阳县| 阜宁县| 定日县| 柳河县| 邵东县| 定边县| 衡南县| 宜城市| 双桥区| 军事| 龙南县| 巴林右旗| 平湖市| 淮阳县| 淅川县| 兴义市| 定安县| 仁寿县| 新密市| 南部县| 民权县| 五家渠市| 紫阳县| 沛县| 孟连| 白玉县| 新闻|