关于Django第三方的一些闲言碎语
Django 是一个强大的web开发框架,经常借助的第三方做个总结。主要是配置流程。
一、富文本编辑器
借助富文本编辑器,网站的编辑人员能够像使用offfice一样编写出漂亮的、所见即所得的页面。此处以tinymce为例,其它富文本编辑器的使用也是类似的。
1、在虚拟环境中安装包。
pip install django-tinymce==2.6.0
2、在配置文件中进行配置
INSTALLED_APPS = (
...
'tinymce',
)
# settings.py文件中配置
TINYMCE_DEFAULT_CONFIG = {
'theme': 'advanced', #设置主题
'width': 600,
'height': 400,
}
# urls.py中配置编辑器url
urlpatterns = [
...
url(r'^tinymce/', include('tinymce.urls')), # 固定写法,其实是映射到人家写好的应用
]
3、配置完成之后就可以使用富文本编辑器,有两种途经。一是在后台管理页面上显示,提供给后台输入数据。二是在前端页面显示,下面分别列出使用方法。
(一)后台管理页面使用富文本
1)在booktest/models.py中,定义模型的属性为HTMLField()类型。
from django.db import models from tinymce.models import HTMLField #导入这个类型 class GoodsInfo(models.Model): gcontent=HTMLField() # 定义HTML类型的字段
2)生成迁移文件并且执行迁移。
python manage.py makemigrations python manage.py migrate
3)在booktest/admin.py中注册模型类GoodsInfo
from django.contrib import admin
from models import *
class GoodsInfoAdmin(admin.ModelAdmin):
list_display = ['id']
admin.site.register(GoodsInfo,GoodsInfoAdmin)
(二)前端页面使用富文本
1、def editor(request):
return render(request, 'booktest/editor.html')
2、url(r'^editor/',views.editor),
3、
<html>
<head>
<title>自定义使用tinymce</title>
<script type="text/javascript" src='/static/js/tiny_mce.js'></script>
<script type="text/javascript">
tinyMCE.init({
'mode':'textareas',
'theme':'advanced',
'width':400,
'height':100
});
</script>
</head>
<body>
<form method="post" action="#">
<textarea name='gcontent'>哈哈,这是啥呀</textarea>
</form>
</body>
</html>
4、STATICFILES_DIRS=[
os.path.join(BASE_DIR,'statics'),
]
5、/home/python/.virtualenvs/py_django/lib/python2.7/site-packages/tinymce/static/tiny_mce
6、http://127.0.0.1:8000/editor/

浙公网安备 33010602011771号