如何给项目添加富文本
在添加之前,我们要知道前台form和普通不上传的form的区别。
form表单提交,要使用流的技术通讯。
普通的form表单是以字符流的形式提交,提交的方式有POST和GET。
而前台form表单是以字节流的形式通过POST提交的。默认的编码:
enctype=' multipart/form-data ' method='poost'
注意:这里的提交方式只有POST,并没有GET,所以如果提交方法 method=‘get',一定会报错。
到了这里想必你已经知道二者的区别,如果想更深入了解 http://blog.****.net/belber/article/details/9831809
想要使用富文本我们首先得到网上下载一个,我这里用的是百度ueditor1.4.3.3版本的。
下载好ueditor后,因为害怕文件缺失使得整个富文本无法使用,所以我把整个富文本直接放在static文件夹下新建的ue文件夹里
因为我下载的PHP版的,无法在DJango中直接使用,所以我们得修改一些地方。
首先在 _examples文件里,找到editor.api.js。一般这个文件夹是排列在第一位。
打开此文件我们直接下拉到最后,修改它的路径
这样就将Django和富文本连接起来了。
接着我们需要在add.HTML文件中做些改动。
这个文件我把它放在temples里blog文件夹中。
首先在form中添加 enctype,将整个表单从普通的不上传表单变更为前台form。
因为我们暂时只需要富文本中的ueditor.config.js文件和exampls下的editor_api.js文件,即我们先前修改路径的文件。
编辑框中存在着一个问日:
让Ueditor有固定的行高,当内容超过行高时不会自动向下延伸,而是在右边出现一个滚动条,如何实现?
我们需要添加一个js
var editor_a = UE.getEditor('blogContent',{initialFrameHeight:500});
这一步就是定义编辑器的初始高度,也可以定义宽度、最大输入数字、不允许自动增高(这一项很重要,不设置的话,放一张很大的图片进去,编辑框会拉的很长)
这样子我们打开页面就能看到一个简单的富文本啦。
表面看上去这个富文本已经添加好了,然而当我们在里头输入内容的时候发现了一个问题,它怎么把HTML标签也给带过来拉?
我们需要一个HTML autoescape来让调皮的富文本乖乖自动转义。
只需要在接收的HTML文件,show.HTML文件中添加autoescap标签就行啦
至此,富文本才算真正的添加进去了。