Django5.1建站-流程及语句==环境:windows10专业版+python版本3.12【请先安装】+pycharm版本2024.1.4【请先安装】第六天 写作时间:2024年8月15日 Django后天管理集成文本编辑器django-ckeditor 一、集成有【上传本地图片】功能的文本编辑器django-ckeditor 【提示:以下内容需要在实现第五天效果的基础上】 1、安装库: pip install -i https://pypi.mirrors.ustc.edu.cn/simple/ pillow 2、注册应用: 在settings.py文件的INSTALLED_APPS下加入 ckeditor_uploader, 3、在项目根目录下创建media目录 4、继续配置settings.py,添加如下代码 #使用上传功能,需要设置上传位置。 #该文件是上传到media目录,所以也需要设置media。 #打开settings.py添加如下设置: MEDIA_URL = /media/ # 放在django项目根目录,同时也需要创建media文件夹 MEDIA_ROOT = os.path.join(BASE_DIR, media) CKEDITOR_UPLOAD_PATH = upload/ #程序会自动创建upload目录 5、配置url.py,添加如下代码,有重复的import请做删除 from django.conf import settings from.conf.urls.static import static from django.urls import path path(ckeditor,include(ckeditor_uploader.urls)) #这一条放在 [ ] 之内 if settings.DEBUG #这2条放在 [ ] 之外 (空2格)urlpatterns +=static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT) 6、配置model.py:添加如下代码 from django.db import models from ckeditor_uploader.fields import RichTextUploadingField class Blog(models.Model): #请将此类代码放在第一个位置 title = models.CharField(max_length=50) content = RichTextUploadingField() #请替换相应应用的函数,以启用文本编辑器 如: #class PostInfo(models.Model): #user = models.ForeignKey(UserInfo, on_delete=models.CASCADE,verbose_name=栏目类别) #title = models.CharField(max_length=50,verbose_name=标题) #content = RichTextUploadingField(verbose_name=内容) #<---- 比如这个地方就被替换成了 RichTextUploadingField 函数 4、输入如上模型语句后,在终端中输入 python manage.py makemigrations #生成迁移文件 python manage.py migrate #迁移数据库,创建新表 5、启动程序,进入后台管理,添加文章,内容位置就显示为文本编辑器了。 【可以实现本地上传图片的功能,用以发布信息】
|