zoukankan      html  css  js  c++  java
  • python 后台 安装 富文本编辑

    前言

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

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

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

    安装编辑器

    你的项目:我的是mysite

    >>pip install django-ckeditor

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

    然后在

    注册应用'ckeditor'

    mysitesetting.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

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

    修改繁体字  -> 简体字

    mysitesetting.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 ,继续加油吧

  • 相关阅读:
    在vue中格式化表格中的时间为指定格式
    vlookup匹配数据
    .net core 导出文件到浏览器
    SQL语句 不足位数补0
    获取两个月份间的所有月份列表
    WIN10安装MYSQL教程
    在IDEA中使用@Slf4j报错,找不到log报错
    mybatis plus 动态表名 SQL 解析【我】
    Linux下搭建FTP服务器的方法
    关于行结束符(CR、LF)
  • 原文地址:https://www.cnblogs.com/yf-html/p/9349594.html
Copyright © 2011-2022 走看看