前言

当然需要安装一些后台只能输入一些文本编辑器,不然这样多少不美观呀

当然python 有 safe 可以把后台的标签转换 ,

还有 striptags   这个是换成html 格式的,但不会加粗或者啥之类的

安装编辑器

你的项目:我的是mysite

>>pip install django-ckeditor

他会自动帮你安装一个django-js-asset 这个js解释器 ,哈

然后在

注册应用'ckeditor'

mysite\setting.py 修改

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',#引入本地相对路径
'blog',
'ckeditor', #添加这个
]

配置model

在blog \models.py下的修改

把字段改成 RichTextField

from django.db import models
from django.contrib.auth.models import User
from ckeditor.fields import RichTextField #引入库
# Create your models here. class BlogType(models.Model):
type_name = models.CharField(max_length=20)
def __str__(self):
return self.type_name class Blog(models.Model):
title = models.CharField(max_length=50)
blog_type = models.ForeignKey(BlogType, on_delete=models.DO_NOTHING)
#context = models.TextField()
context = RichTextField() #替换便签
author = models.ForeignKey(User, on_delete=models.DO_NOTHING)
created_time = models.DateTimeField(auto_now_add=True)
last_updated_time = models.DateTimeField(auto_now=True)
def __str__(self):
return "<Blog: %s>" % self.title class Meta:
ordering = ['-created_time'] # 按照created_time倒序排序

在操作和更新数据库

python manage.py makemigrations
python manage.py migrate

在运行

python manage.py runserver

打开后台界面出现下方的文本 :完美

修改繁体字  -> 简体字

mysite\setting.py 修改

LANGUAGE_CODE = 'zh-hans'

安装图片上传功能

目录下输入:

pip install pillow

在注册 ckeditor_oploader

mysite/settings.py

最后一行加入 ‘ckeditor_oploader’

配置图片url

mysite/settings.py

# media
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media') # 配置ckeditor
CKEDITOR_UPLOAD_PATH = 'upload/'

然后新建文件夹

mysite 下 media 文集夹

上传的图片就会到media 这个文件夹里面了

配置路径

mysite/urls.py

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from . import views urlpatterns = [
path('', views.home, name='home'),
path('admin/', admin.site.urls),
path('ckeditor',include('ckeditor_uploader.urls')), #这个
path('blog/', include('blog.urls')),
] urlpatterns += static(settings.MEDIA_URL, document_root= settings.MEDIA_ROOT) #这个

在把字段改为RichTextUploadingField

在blog \models.py下的修改

from ckeditor_uploader.fields import  RichTextUploadingField
...
#context = models.TextField()
context = RichTextUploadingField()

最后 在操作和更新数据库

数据迁移  在操作和更新数据库

python manage.py makemigrations
python manage.py migrate

在运行

python manage.py runserver

在上传图片  ,选择图片 ,上传到服务器上 ,完美 哈哈

Django 也是依赖 第3方库来开发的,哈哈 node 有点相似

ok ,继续加油吧

python 后台 安装 富文本编辑的更多相关文章

  1. KindEditor富文本编辑框和BeautifulSoup的基本使用

    KindEditor富文本编辑框 1.进入官网 2.下载 官网下载:http://kindeditor.net/down.php 本地下载:http://files.cnblogs.com/files ...

  2. python的安装,IDLE基本操作

    §一.安装Python 1. 下载Active Python安装包 根据你机器型号download Python,32b选择for windows X86,64b选择for window 64b 2. ...

  3. 富文本编辑,xss攻击

    富文本编辑 KindEditor 在线HTML编辑器 http://kindeditor.net/doc.php 下载成功,解压放到项目中去 查看官方文档进行操作 xss攻击 XSS攻击全称跨站脚本攻 ...

  4. SNF快速开发平台MVC-EasyUI3.9之-ueditor富文本编辑在 asp.net MVC下使用步骤

    mvc项目中用到了这个富文本编辑就试着把遇到的问题个使用步骤在这里记录一下,希望大家少走弯路. 1.首先我们先下载net版本的uediot 2.然后把整个文档拷贝到我们的项目中,记得是整个 把下载的文 ...

  5. 使用Flask-CKEditor集成富文本编辑框

    使用Flask-CKEditor集成富文本编辑框 富文本编辑器即所见即所得编辑器,类似于文本编辑软件.它提供一系列按钮和下拉列表来为文本设置格式,编辑状态的文本样式即最终呈现出来的样式.在Web程序中 ...

  6. django admin富文本编辑kindeditor

    最近在做django项目,需要在后台管理系统加入富文本编辑 其实加入富文本编辑很简单,就是导入几个编辑器的js脚本到admin页面内,下面说说怎么做 第一步,下载想要的富文本编辑器如kindedito ...

  7. tinymce + vue 富文本编辑

    用texterea最多支持换行,如果文本信息想要更加丰富一些,比如增加格式样式,比如增加图片,textarea就爱莫能助了 在网上搜寻了一番,发现tinymce是比较方便好用的一款富文本编辑 http ...

  8. Python下载安装及验证

      目录: 一.Python介绍 二.python安装及验证 一.Python介绍 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个 ...

  9. 微信小程序使用wxParse实现接入富文本编辑

    简介 微信小程序中比如活动说明,简介这样的图文介绍说明页面,后台通常配置成富文本编辑框,由后台直接输入内容,然后在小程序界面展现. 但是富文本编辑提取到内容是html格式的,写法与小程序的wxml并不 ...

随机推荐

  1. Java学习之==>IO文件操作体系

    一.概述 在整个 Java.io 中最重要的就是5个类和一个接口.5个类指的是 File.InputStream.OutputStream.Reader.Writer,一个接口指的是Serializa ...

  2. Java Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)

    示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...

  3. Python中常见的异常总结

    Python中常见的异常总结 当Python检测到一个错误时,解释器就会指出当前流已经无法继续执行下去,这时候就出现了异常. 一.异常错误    a.语法错误     错误一:     if     ...

  4. 一张图包含SEO一切要点

    看到一张好图 from http://www.rongyipiao.com/?p=8

  5. 描述下什么是springcloud,springcloud中的组件有哪些?分别描述下它的原理?

    1.什么是springcloud,springcloud中的组件有哪些? Spring cloud是一个基于Spring Boot实现的服务治理工具包,在微服务架构中用于管理和协调服务的微服务:就是把 ...

  6. CentOS 7 Tomcat 启动后 外部无法访问的问题

    1.启动tomcat 2.   验证tomcat 是否启动成功 ps -ef|grep tomcat  这样是启动成功了的 3 检查防火墙是否启动 firewall-cmd --state 防火墙 已 ...

  7. 关于Eclipse及JDK安装过程中的一些问题

    一,环境变量的配置 1.配置CLASSPATH系统变量 CLASSPATH系统变量为类查找路径 ①.在使用javac进行编译时遇到import时候就会通过这个变量里面配置的路径去查找.如果配置的是目录 ...

  8. python 并发编程 多线程 线程queue

    线程queue 线程之间已经是共享数据的,为什么还使用线程queue? 线程需要自己加锁,线程queue帮我们处理好加锁的问题 有三种不同的用法 第一种方法: class queue.Queue(ma ...

  9. 交换机安全学习笔记 第四章 VLAN

      Trunk 口  思科称为:native VLAN  华为称为:PVID   说白了就是Trunk端口本身所属的VLAN,因为,Trunk端口要"透传"多个VLAN的流量,其本 ...

  10. 小记---------Hadoop的MapReduce基础知识

    MapReduce是一种分布式计算模型,主要用于搜索领域,解决海量数据的计算问题 MR由两个阶段组成:Map和Reduce,用户只需要实现map()和reduce()两个函数,即可实现分布式计算. 两 ...