python - 如何在django自带的admin后台写博文时插入图片?

 mobiledu2502879793 发布于 2022-10-30 23:33

初学django,目前我用django实现了一个很小的blog,但我想在admin后台编辑内容的区域加入插入图片并且预览的功能,不知道该如何实现。恳请大家在这里给我一点实现的思路,小弟感激不尽。

关键代码展示如下:

models.py

class Post(models.Model):
    #some other fields
    title = models.CharField(max_length=70, default='')
    body = models.TextField(default='')#这里就是对应于后台编辑区域的fields

感谢楼下两位朋友的回答,对我很有帮助,部分的插件我也尝试用过。但是因为我目前处于学习django的阶段,因此不想使用任何的第三方包来实现我的需求,而且我也并不需要一个富文本编辑器,只需要一个上传图片的功能就行了。

3 个回答
  • 2022-10-31 22:04 回答
  • django-ckeditor

    2022-10-31 22:04 回答
  • 推荐 https://github.com/pydanny/django-wysiwyg 插件,里面可以选择各种html编辑器比如:ckeditor, tinymce等。
    具体步骤如下:

    1. INSTALLED_APPS 添加 django_wysiwyg.

    2. 配置需要使用的编辑器类型 DJANGO_WYSIWYG_FLAVOR = "ckeditor" #这里使用的是ckeditor

    3. 修改模型对应的admin文件,讲模型的admin类的change_form_template设置成'fun/admin/change_form.html'

    4. 复制:cp django_wysiwyg/templates/my-app-name/admin/change_form.html pydanny/templates/fun/admin/change_form.html

    5. 修改change_form.html文件
      {% extends "admin/change_form.html" %}
      {% load wysiwyg %}

      {% block extrahead %}

         {{ block.super }}
         {% wysiwyg_setup %}

      {% endblock %}

      {% block content %}

         {{ block.super }}
         {% wysiwyg_editor "id_description" %}

      {% endblock %}

      把"id_description"改成你对应的模型需要使用editor的字段的名称就行了。

    2022-10-31 22:04 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有