django中,kindeditor存到数据库的html,到了前台被html标签被自动转义的解决办法

1,使用kindeditor进行了上传图片功能,存储到后台的html代码为:

<img src="/static/content_img/img_2015-07-21-024421.jpg"  />KindEditor

2,我把这个unicode字符串返回到前台的模板,结果显示了html代码:

<img src="/static/content_img/img_2015-07-21-024421.jpg"  />KindEditor

3,自己开始的解决办法:

存的时候进行escape

content = cgi.escape(content)

这样处理后存到后台的代码变成了:

&lt;img src="/static/content_img/img_2015-07-21-024421.jpg"  /&gt;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"  />KindEditor

4,但是这样问题没有得到处理,于是自己写了一个测试,直接把这段html字符串HttpResponse回到页面,结果显示正常。

又查了下自己原来处理方式的前台的源代码,结果是被转义后的。于是想到如果通过{{content}}方式在前台显示html代码

的话,django模板在编译的时候,会自动对html标签进行转义,稍微查了下,使用以下方式不让django模板自动转义

html标签。同时也解决了自己的问题。

{% autoescape off %}
{{infoContent}}
{% endautoescape %}
时间: 2024-11-02 18:08:49

django中,kindeditor存到数据库的html,到了前台被html标签被自动转义的解决办法的相关文章

django 中连接mysql数据库的操作步骤

django中连接mysql数据库的操作步骤: 1 settings配置文件中 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'orm02', # 库的名字 'USER':'root', # 数据库的用户名 'PASSWORD':'666', # 数据库的密码 'HOST':'127.0.0.1', 'PORT':3306, } } 2 项目文件夹下的init文件中写上下面内容,用pymysql替

关于Eclipse中Jsp页面打不开并且显示Failed to create the part&#39;s controls的解决办法

问题描述:同事从svn上导入的一个项目,jdk都设置好了以后,java.xml.html等文件都能打开,唯独jsp文件打不开,并且显示Failed to create the part's controls,但有小部分jsp是可以打开的. 解决过程:我在网上搜索了Failed to create the part's controls这个关键语句,网上解决办法1:关闭Eclipse再打开:办法2:切换工作空间式重启:办法3:jdk版本的问题.前两种办法都试过了,最后一种是不存在的情况,但都没有解

Django中ORM对数据库的增删改查操作

什么是ORM?  ORM(对象关系映射)指用面向对象的方法处理数据库中的创建表以及数据的增删改查等操作. 简而言之,就是将数据库的一张表当作一个类,数据库中的每一条记录当作一个对象.在Django中定义一个类,就是在数据库中创建一张表格.在Django中实例化一个类的对象,就是在数据库中增加了一条记录.在Django中删除一个对象,就是在数据库中删除了一条记录.在DJango中更改一个对象的属性,就是在数据库中修改一条记录的值.在django中遍历查询对象的属性值,就是在数据库中查询记录的值.

Django中如何将数据库的数据展示在网页上

Django中数据展示需要由视图.模型和模板共同实现,实现步骤如下: 定义数据模型,以类的方式定义数据表的字段.在数据库创建数据表时,数据表由模型中定义的类生成: 在视图中导入模型所定义的类,该类也称为数据表对象,Django为数据表对象提供独有的数据操作方法ORM,可以实现数据库操作,从而获取数据表数据: 视图函数获取数据后,将数据以字典.列表或对象的方式传入给HTML模板,并由模板引擎接收和解析,最后生成相应的HTML网页. 用户的请求信息都放在视图函数的参数request中,其中属性GET

关于mysql数据库在输入密码后,滴的一声直接退出界面的解决办法(详细办法)

前一阵子,由于写程序要用到数据库,便在本子上下载了一个,却出现很多小问题(自己的台式机却没有该问题,可能是本人的本子太渣了吧),纠结了好一阵,回头想想,发现问题,分析问题,解决问题,不就是我们的软件管理的思想嘛,只有经历过问题,才能深刻理解.废话不多说了,直接上题. 下载好mysql后,当你打开mysql的字符界面时(MySQL 5.5 Command Line Client),输入密码(在安装时,向导里手动设置好的).出现滴的一声的,然后一闪屏就结束了,我的电脑前一段时间,装了个mysql 5

Android中 在显示ImageView时图片上面和下面都出现一段空白区间的解决办法

开始的时候是在ScrollView中显示ImageView的时候出现这样的问题,以为是要对ScrollView进行设置的,后来发现单独显示一个ImageView的时候也会出现这样的问题,由此才知道是应该对ImageView进行设置啦- 解决办法如下喽- 1.在XML文件中设置: android:adjustViewBounds="true" 2.在Java代码中进行设置: mImageView.setAdjustViewBounds(true);

在WIn32程序中使用MFC的CInternetSession运行异常,主要是因为获取目前应用程序名出错的解决办法

转载:http://group.gimoo.net/review/22564 头文件#include <afxinet.h"> 在非MFC工程中使用CInternetSession抛异常的原因,调试跟踪到说AfxGetAppName为空 解决办法:创建CInternetSession 有参对象 CInternetSession InternetSession(_T("myagent"));

华为命令中Tab键无法自动补全解决办法

一:问题详情 CRT中命令无法使用Tab键自动补全 二:解决办法 原文地址:https://blog.51cto.com/14558454/2450936

Django中如何实现数据库路由?

虽然我们提供了数据库的信息,它知道怎么连接数据库,但问题是我们保存里面有很多模型,它不知道哪个模型存到哪个数据库.这就要求我们自己来指定,也就是我们自己来实现一个数据库路由.一个数据库路由是一个拥有4个方法的类,这四个方法是: db_for_read(model, **hints) 对于该model 用哪个数据库来读. db_for_write(model, **hints) 对于该model用哪个数据库来写. allow_relation(obj1, obj2, **hints) 是否允许两个