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

您的位置:首頁技術文章
文章詳情頁

django 模版關閉轉義方式

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

django 模版顯示的html中出現'類似的ascii字符,這是由于django對單引號進行了轉義,可以通過關閉轉義解決html處理異常問題。

關閉django轉義的方法有如下兩種:

1.關閉單個模版變量的轉義:

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

2.利用django模版標記關閉html或js塊轉義

{% autoescape off %}

code..

{% endautoescape %}

補充知識:Django使用mark_safe()和format_html()函數

django從view向template傳遞HTML字符串的時候,django默認不渲染此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這個函數就是確認這段函數是安全的,不是惡意攻擊的。

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

django 模版關閉轉義方式

format_html和mark_safe非常類似,本質還是調用mark_safe函數,不同在于傳參方式,mark_safe直接傳遞完整的html字符串;

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

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

以上這篇django 模版關閉轉義方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Django
相關文章:
主站蜘蛛池模板: 黎川县| 红河县| 格尔木市| 古丈县| 杭州市| 枞阳县| 丹东市| 金昌市| 怀安县| 福泉市| 名山县| 商洛市| 揭西县| 兰考县| 仁布县| 宁德市| 永和县| 塔河县| 邵东县| 章丘市| 衡东县| 云霄县| 丹巴县| 怀来县| 桃源县| 饶平县| 晋城| 托里县| 蓬安县| 陵川县| 青冈县| 榕江县| 阿拉善盟| 桐柏县| 兰坪| 囊谦县| 深州市| 承德县| 扶余县| 阳山县| 会理县|