django中,kindeditor存到数据库的html,前台html标签被自动转义的解决办法
生活随笔
收集整理的這篇文章主要介紹了
django中,kindeditor存到数据库的html,前台html标签被自动转义的解决办法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
2019獨角獸企業(yè)重金招聘Python工程師標準>>>
1,使用kindeditor進行了上傳圖片功能,存儲到后臺的html代碼為:
<img?src="/static/content_img/img_2015-07-21-024421.jpg"?alt=""?/>KindEditor2,我把這個unicode字符串返回到前臺的模板,結果顯示了html代碼:
<img?src="/static/content_img/img_2015-07-21-024421.jpg"?alt=""?/>KindEditor3,自己開始的解決辦法:
?? 存的時候進行escape
content?=?cgi.escape(content)?? 這樣處理后存到后臺的代碼變成了:
<img?src="/static/content_img/img_2015-07-21-024421.jpg"?alt=""?/>KindEditor?? 取的時候unescape一下
import?HTMLParser html_parser?=?HTMLParser.HTMLParser() infoContent?=?html_parser.unescape(info.content)?? 這樣處理后的代碼變成了:
<img?src="/static/content_img/img_2015-07-21-024421.jpg"?alt=""?/>KindEditor4,但是這樣問題沒有得到處理,于是自己寫了一個測試,直接把這段html字符串HttpResponse回到頁面,結果顯示正常。
?? 又查了下自己原來處理方式的前臺的源代碼,結果是被轉義后的。于是想到如果通過{{content}}方式在前臺顯示html代碼
?? 的話,django模板在編譯的時候,會自動對html標簽進行轉義,稍微查了下,使用以下方式不讓django模板自動轉義
?? html標簽。同時也解決了自己的問題。
{%?autoescape?off?%} {{infoContent}} {%?endautoescape?%}轉載于:https://my.oschina.net/yangting880815/blog/481096
總結
以上是生活随笔為你收集整理的django中,kindeditor存到数据库的html,前台html标签被自动转义的解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: locustio压力测试
- 下一篇: mysqldump: Got error