• Django CKEdirtor配置(图片上传,粘贴,文件上传)


    注:pycharm Django2.0  CKEditor4

    一.CKEditor引入

    1     1.CKEditor引入(下载的ckeditor包直接粘贴到static内)
    2     <script  type="text/javascript" src="/static/ckeditor/ckeditor.js"></script>
    3     <script  type="text/javascript" src="/static/ckeditor/config.js"></script>
    4     2.下为CKEditor生效的标签(还有另外几种方式就不赘述了)
    5     <textarea class="ckeditor" name="editor1" > </textarea>
    6     注:如上刷新页面编辑器应该已经生效了

    二.

    如pycharm在打开的时候报错

    ESLint:Please specify ESLint .......

    需要安装下 Node.js 和 ESLint(网上有资料) 并在setting 配置下

    三.

    1     如果是第一次应用富文本需要设置下media文件用来存放上传数据
    2     在setting  文件在下面添加
    3         MEDIA_ROOT=os.path.join(BASE_DIR,"App01","media")
    4         MEDIA_URL="/media/"
    5     在主url添加
    6         url('media/(?P<path>.*)', serve, {'document_root': settings.MEDIA_ROOT}),

    四.
    上传函数应用局部禁用csrf
     1 from django.views.decorators.csrf import csrf_exempt 2 在函数上添加@csrf_exempt 

    五.
    下面需要在ckeditor包下config.js设置

     1 CKEDITOR.editorConfig = function( config ) {
     2 // Define changes to default configuration here. For example:
     3 //config.language = 'zh-cn';//更改为中文
     4 // config.uiColor = '#AADC6E';
     5 config.width = 790.5;
     6 config.height = 400;
     7 config.filebrowserImageUploadUrl = '/itbg/bgimg.html/'; // 图片上传路径
     8 config.uploadUrl='/itbg/bgimg.html/';
     9 //图片粘贴(上行只是支持编辑器的“图像”上传。这行可以直接桌面拖拽图片和从word复制多张图片到编辑器)
    10 config.filebrowserUploadUrl='/itbg/bgimg.html/'
    11 //附件上传(如需要上传附件如.zip .pdf)会在“插入/编辑超链接”出现“上传”栏(默认是木有的)
    12 };
    13 注:如发现上面都不生效可以尝试清下浏览器缓存。

    六.视图处理

     1     views部分
     2     现在创先在项目目录创建文件如:mediauploadimg
     3     def imgdata(request):
     4     imgfile = request.FILES.get("upload")#拿到文件对象
     5     img_path = os.path.join(文件路径mediauploadimg',imgfile.name)#拼接生成上传文件的路径
     6     #chunks向上面生成的路径保存数据
     7     with open(img_path,'wb')as f:
     8     for chunk in imgfile.chunks():
     9         f.write(chunk)
    10     #回显数据
    11     response={
    12         "uploaded":1,
    13         "fileName": imgfile.name,
    14         "url": '/media/upload/img/'+imgfile.name
    15     }
    16     return HttpResponse(json.dumps(response))
  • 相关阅读:
    mysql/mariadb学习记录——查询2
    mysql/mariadb学习记录——查询
    touchSwipe 上下左右滑动,二指缩放 效果不好。
    c# 调用c++ 使用指针传递的时候
    c# 调用 matlab 引发初始化错误 异常
    创建非主键唯一约束
    sql 中 如果添加 时间戳 字段 timestamp
    JS frame 跨域 传值
    VS 附加进程调试
    Aspose.words 替换字符 操作
  • 原文地址:https://www.cnblogs.com/daidechong/p/10151244.html
Copyright © 2020-2023  润新知