Django之富文本(获取内容,设置内容)
富文本
1、Rich Text Format(RTF)
微软开发的跨平台文档格式,大多数的文字处理软件都能读取和保存RTF文档,其实就是可以添加样式的文档,和HTML有很多相似的地方
图示
2、tinymce插件
- 安装插件
- pip install django-tinymce
- 配置插件
- 使用
- 后台管理中
- HTMLField
- 页面中使用
- textarea
3、在后台管理中使用
配置settings.py文件
- INSTALLED_APPS 添加 tinymce 应用
INSTALLED_APPS = [
...
# 注册富文本应用
'tinymce',
]- 添加默认配置
# 以字典形式配置富文本框架tinymce # 作用于管理后台中的富文本编辑器 TINYMCE_DEFAULT_CONFIG = { # 使用高级主题,备选项还有简单主题
'theme': 'advanced',
# 'theme': 'simple', # 必须指定富文本编辑器(RTF=rich text format)的宽高
'width': 800,
'height': 600, # 汉化
'language': 'zh', # 自定义常用的固定样式
'style_formats': [
# title=样式名称
# styles=自定义css样式
# inline:xxx = 将加样式后的文本放在行内元素中显示
# block:xxx = 将加样式后的文本放在块级元素中显示
{'title': 'Bold text', 'inline': 'b'},
{'title': 'Red text', 'inline': 'span', 'styles': {'color': '#ff0000'}},
{'title': 'Red header', 'block': 'h1', 'styles': {'color': '#ff0000'}},
{'title': 'Example 1', 'inline': 'span', 'classes': 'example1'},
{'title': 'Example 2', 'inline': 'span', 'classes': 'example2'},
{'title': 'Table styles'},
{'title': 'Table row 1', 'selector': 'tr', 'classes': 'tablerow1'}
],
}创建模型类
from tinymce.models import HTMLField
class Blog(models.Model):
sBlog = HTMLField()注册模型
- admin.site.register
4、在普通页面使用
使用文本域盛放内容
<form method='post' action='url'>
<textarea></textarea>
</form>添加脚本
<script src='/static/tiny_mce/tiny_mce.js'></script>
<script>
tinyMCE.init({
'mode': 'textareas',
'theme': 'simple',
'theme': 'advanced',
'width': 800,
'height': 600,
'language': 'zh',
'style_formats': [
{'title': 'Bold text', 'inline': 'b'},
{'title': 'Red text', 'inline': 'span', 'styles': {'color': '#ff0000'}},
{'title': 'Red header', 'block': 'h1', 'styles': {'color': '#ff0000'}},
{'title': 'Example 1', 'inline': 'span', 'classes': 'example1'},
{'title': 'Example 2', 'inline': 'span', 'classes': 'example2'},
{'title': 'Table styles'},
{'title': 'Table row 1', 'selector': 'tr', 'classes': 'tablerow1'}
],
})
</script>本质上还是使用html的样式。
5、利用js获取富文本内容和设置内容给富文本
//editorId是富文本的id
function SetTinyMceContent(editorId, content) {
//给富文本编辑器设置内容
tinyMCE.getInstanceById(editorId).getBody().innerHTML = content;
//获取富文本编辑器的内容
var con = tinyMCE.getInstanceById(editorId).getBody().innerHTML;
}
Django之富文本(获取内容,设置内容)的更多相关文章
- 现代富文本编辑器Quill的内容渲染机制
DevUI是一支兼具设计视角和工程视角的团队,服务于华为云DevCloud平台和华为内部数个中后台系统,服务于设计师和前端工程师.官方网站:devui.designNg组件库:ng-devui(欢迎S ...
- JavaScript(19)jQuery HTML 获取和设置内容和属性
jQuery HTML jQuery 拥有可操作 HTML 元素和属性的强慷慨法. jQuery DOM 操作 jQuery 中非常重要的部分,就是操作 DOM 的能力.jQuery 提供一系列与 D ...
- 富文本编辑器粘贴word内容
很多时候我们用一些管理系统的时候,发布新闻.公告等文字类信息时,希望能很快的将word里面的内容直接粘贴到富文本编辑器里面,然后发布出来.减少排版复杂的工作量. 下面是借用百度doc 来快速实现这个w ...
- Django配置富文本编辑器kindeditor
一.简介 django是一个容易快速上手的web框架,用它来创建内容驱动型的网站(比如独立博客)十分方便.遗憾的是,django并没有提供官方的富文本编辑器,而后者恰好是内容型网站后台管理中不可或缺的 ...
- Django 之 富文本编辑器-tinymce
这里的富文本编辑器以 tinymce 为例. 环境:ubuntu 16.04 + django 1.10 + python 2.7 ubuntu安装tinymce: python 2.7 $ sudo ...
- Django之富文本编辑器kindeditor 及上传
1.什么是富文本编辑器 百度百科(https://baike.baidu.com/item/%E5%AF%8C%E6%96%87%E6%9C%AC%E7%BC%96%E8%BE%91%E5%99%A8 ...
- 给Django后台富文本编辑器添加上传文件的功能
使用富文本编辑器上传的文件是要放到服务器上的,所以这是一个request.既然是一个request,就需要urls.py进行转发请求views.py进行处理.views.py处理完了返回一个文件所在的 ...
- Django之富文本编辑器
1.在虚拟环境中安装包. pip install django-tinymce==2.6.0 2.在配置文件中INSTALLED_APPS注册 3.配置富文本编辑器的宽高 4.配置编辑器url.
- UEditor富文本判断是否输入内容
<textarea name="CONTENT" id="CONTENT" maxlength="4000" style=" ...
随机推荐
- Java知识系统回顾整理01基础03变量02基本变量类型
一.变量类型分类 一个变量的类型,决定了该变量可以包含什么样的值. Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字. 这八种基本类型分别是: 整型 (4种) 字符型 (1种) ...
- 《To C产品经理进阶》
我所说的,都是错的. To C产品设计和To B产品设计对一个优秀的产品经理的洞察能力.架构能力有共通的要求. 实际产品设计过程中,To C产品往往是从商业思维思考,侧重用户研究,思考用户心智,由产品 ...
- MinGW与Cygwin的关系与差别
PART1 共同点 Cygwin / GCC和MinGW都是gcc在WINDOWS下的实现. gcc:它是一款原来只能在Linux系统上使用的开源C语言编译器,后来移植到了Windows操作系统上(以 ...
- nginx完美支持thinkphp3.2.2(需配置URL_MODEL=>1 pathinfo模式)
来源:http://www.thinkphp.cn/topic/26657.html 第一步:配置SERVER块 server { listen 80; server_name www.domain. ...
- markdown的基本使用
1.什么是markdown? markdown是一种轻量级的标记语言 可以转换为html/xhtml和其它格式 可读.直观.学习成本低 当你学会使用markdown编写文档时,你会感觉自己发现了一个新 ...
- 多测师讲解python __for 循环___高级讲师肖sir
横向输出 1.遍历字符串 2.遍历列表 3.遍历元组 方法一: 方法二: 方法三: #循环字典:方法一# dict1={"name":"zhihao",&quo ...
- ansible2.4安装和体验
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Jenkins+pytest+Allure搭建自动化测试
持续集成(CONTINUOUS INTEGRATION) 在CI环境中,开发人员将会频繁地向主干提交代码.这些新提交的代码在最终合并到主干前,需要经过编译和自动化测试流进行验证. 持续交付(CONTI ...
- python面试题-django相关
1.中间件 中间件一般做认证或批量请求处理,django中的中间件,其实是一个类,在请求和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法, 如请求过来 执行process_re ...
- 50种编程语言,一句 “Hello, World”!展现编程语言七十年发展!
mod confinment { use std::os::raw::{c_char}; extern "C" { pub fn puts(txt: *const c_char); ...