Django高级扩展之tinymce富文本实现

这篇具有很好参考价值的文章主要介绍了Django高级扩展之tinymce富文本实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 

目录

安装

在站点中使用

注册富文本应用

添加配置文件

创建模型类

生成迁移文件

执行表迁移

配置站点

富文本不显示解决

修改主题

修改语言设置

自定义视图使用

设置路由

视图

创建模板

总结


安装

pip install django-tinymce

 

安装过程如下:

Django高级扩展之tinymce富文本实现

 

在站点中使用

注册富文本应用

配置settings.py文件

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myapp',
    'tinymce'
]

添加配置文件

在settings.py底部添加,配置模式和宽高。

# 富文本配置
TINYMCE_DEFAULT_CONFIG = {
    'theme': 'advanced',
    'width': 600,
    'height': 400
}

创建模型类

项目models.py中增加方法

from tinymce.models import HTMLField

class Text(models.Model):

    
    str = HTMLField()

生成迁移文件

命令如下:

python manage.py makemigrations myapp

执行结果如下:

D:\lianxi_py\project>python manage.py makemigrations myapp
Migrations for 'myapp':
  myapp\migrations\0006_auto_20230616_1131.py
    - Create model Text
    - Change Meta options on students
    - Change managers on students
    - Alter field desc on students

执行表迁移

将模型的最新状态部署到数据库。

命令如下:

python manage.py migrate myapp

执行结果如下:

D:\lianxi_py\project>python manage.py migrate myapp
Operations to perform:
  Apply all migrations: myapp
Running migrations:
  Applying myapp.0006_auto_20230616_1131... OK

配置站点

Admin.py 模型类站点注册

from django.contrib import admin
from .models import Text


admin.site.register(Text)

然后站点登录,站点管理增加Texts。

 Django高级扩展之tinymce富文本实现

点击详情,增加text

Django高级扩展之tinymce富文本实现 

 

富文本不显示解决

这时候,没出现富文本

 Django高级扩展之tinymce富文本实现

查看控制台提示js 404

Django高级扩展之tinymce富文本实现 

 看网上几个解决方法一一尝试,发现注释设置的主题后,能加载出来。

Django高级扩展之tinymce富文本实现

看到网友说django-tinymce-2.8.0这个版本才有advanced主题。

我的Django版本是3.0 只能改主题了。

修改主题

找到django-tinymce库(一般在python3.7\Lib\site-packages中)

打开tinymce查看主题

Django高级扩展之tinymce富文本实现

就剩下moblie和silver两种。所以之前设置的模板无法找到。

模板改为silver

'theme': 'silver',

 

修改语言设置

默认显示为繁体字,改为简体中文。

'language': 'zh_CN'

效果

 Django高级扩展之tinymce富文本实现

 

自定义视图使用

设置路由

urlpatterns = [
    # 自定义富文本实现
    path(r'custom_edit', views.custom_edit, name='custom_edit')
]

视图

def custom_edit(request):
    """ 自定义页面使用富文本 """

    return render(request, 'myapp/custom_edit.html')

创建模板

加载tinymce.min.js脚本,设置配置后,再加载相应语言脚本。

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>自定义页面使用富文本</title>
    <script src="{% static 'tinymce/tinymce.min.js' %}"></script>
    <script>
        tinyMCE.init({
            'mode':'textareas',
            'theme': 'silver',
            'width': 600,
            'height': 400,
            'language': 'zh_CN'

        })
    </script>
</head>
<body>
    <textarea name="str" id="str" cols="30" rows="10">这是默认内容</textarea>
</body>
</html>

访问

Django高级扩展之tinymce富文本实现

 

总结

富文本主要用于在项目中实现图文混合编辑,但又想实现非固定模板时,使用,后台编辑发布,利用的就是富文本的所见即所得效果!文章来源地址https://www.toymoban.com/news/detail-496097.html

到了这里,关于Django高级扩展之tinymce富文本实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Django高级扩展之celery使用

    Django高级扩展之celery使用

    Celery是一个简单、灵活、可靠的分布式系统,用于处理大量消息,同时为操作提供维护此类系统所需的工具。是一个专注于实时处理的任务队列,同时还支持任务调度。 目录 应用场景 问题 解决 celery架构图 安装 配置celery Settings.py配置 创建celery 修改__init__ 开启celery 异步执行

    2024年02月11日
    浏览(13)
  • Django高级扩展之中间件

    Django高级扩展之中间件

    中间件是Django请求/响应处理的钩子框架。它是一个轻量级的、低级的“插件”系统,用于全局改变Django的输入或输出。每个中间件组件负责实现一些特定的功能。例如,Django包含一个中间件组件AuthenticationMiddleware,它使用会话将用户与请求关联起来。 目录 方法介绍 __init

    2024年02月10日
    浏览(10)
  • Django高级扩展之系统后台使用celery

    Django高级扩展之系统后台使用celery

    如果我们在系统后台想某日某时执行某个任务,或者每隔一段时间执行某个任务,可以使用celery来完成。 目录 安装 安装celery 安装django_celery_beat celery配置 注册应用 celery配置 修改__init__.py 表迁移 执行迁移 控制台运行截图 新增数据表 安装django-celery-results 执行命令 注册应用

    2024年02月11日
    浏览(15)
  • Django高级扩展之静态文件和ajax使用

    Django高级扩展之静态文件和ajax使用

    目录 使用静态文件 创建静态文件目录 Settings.py配置 创建css文件 路由与视图 设置路由 视图 模板使用静态文件 调用css 调用js 调用图片 优化路径 加载标签 修改文件路径 修改图片路径 修改js路径 修改css路径 使用Ajax 应用场景 示例 路由 视图 模板 Javascript 总结 css、js、图片、

    2024年02月09日
    浏览(45)
  • vue中使用Base64转码(Tinymce富文本保留HTML标签)

    vue中使用Base64转码(Tinymce富文本保留HTML标签)

    在vue项目中,我们经常使用到富文本编辑器,例如博主的项目(见上图),这里需要把富文本内的HTML结构,发放到Android端做混合应用的开发,因此HTML结构必不可少的! 但是浏览器在向服务器发送数据时,有可能出现不识别前端发送的特殊字符,或者直接丢弃特殊字符,此时

    2024年02月15日
    浏览(15)
  • vue3富文本编辑器的二次封装开发-Tinymce

    vue3富文本编辑器的二次封装开发-Tinymce

    欢迎点击领取 -《前端开发面试题进阶秘籍》:前端登顶之巅-最全面的前端知识点梳理总结 专享链接 简介 1、安装:pnpm add tinymce @tinymce/tinymce-vue === Vue3 + tinymce + @tinymce/tinymce-vue 2、功能实现图片上传、基金卡片插入、收益卡片插入、源代码复用、最大长度限制、自定义表情包

    2024年02月07日
    浏览(50)
  • Tinymce富文本编辑器二次开发电子病历时解决的bug

    Tinymce富文本编辑器二次开发电子病历时解决的bug

    本文是在Tinymce富文本编辑器添加自定义toolbar,二级菜单,自定义表单,签名的基础之上进行一些bug记录,功能添加,以及模版的应用和打印 项目描述 建立电子病历模版—录入(电子病历模版和电子病历打印模版)—查看电子病历和打印病历模版 建立电子病历----添加一个电

    2024年04月10日
    浏览(61)
  • 【vue】 Tinymce 富文本编辑器 不想让上传的图片转换成base64,而是链接

    【vue】 Tinymce 富文本编辑器 不想让上传的图片转换成base64,而是链接

    前言:最近项目上需要使用富文本编辑器,觉得tinymce很不错就用了,具体怎么在项目中使用参考 【vue】 vue2 中使用 Tinymce 富文本编辑器 【vue】 Tinymce 数据 回显问题 | 第一次正常回显后面,显示空白bug不能编辑 这两天又遇到了新的问题,图片上传后是看地址栏发现是base64的

    2024年02月14日
    浏览(150)
  • vue2使用 tinymce富文本编辑器-图片上传、粘贴图片上传致服务器

    1.安装tinymce富文本编辑器插件 npm i tinymce npm i @tinymce/tinymce-vue 2.创建Editor.js文件 封装组件 以便使用 3.汉化包 (我放在public/tynymce/langs文件夹里) 4.vue组件中使用 本次记录重点在于 上传图片方法 需要区分工具栏中图片上传方法 以及 粘贴进去的图片也需要走上传方法。两个方

    2024年02月09日
    浏览(52)
  • Web开发的富文本编辑器CKEditor介绍,Django有库ckeditor_uploader对它进行支持,django-ckeditor安装方法及使用注意事项

    Web开发的富文本编辑器CKEditor介绍,Django有库ckeditor_uploader对它进行支持,django-ckeditor安装方法及使用注意事项

    当需要在网页应用程序中提供富文本编辑功能时,CKEditor是一个流行的选择。CKEditor是一个开源的JavaScript富文本编辑器,它提供了强大的功能和用户友好的界面,使用户可以轻松创建和编辑格式化的文本内容。 以下是CKEditor的一些主要特性: 所见即所得编辑 :CKEditor提供了所

    2024年02月16日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包