所用编辑器 【wangEditor.js】

图片上传接口 '/edit/image/' 返回内容  参照 https://www.kancloud.cn/wangfupeng/wangeditor3/335782

# 2018_12_29 日更新

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>wangEditor demo</title>
</head>
  <script type="text/javascript">
function modifyContent() {
var introduce = document.getElementById("introduce");
introduce.value = editor.txt.html();
}
</script> <body>
<form action="" method="post" onsubmit="modifyContent()">
<div>
<!-- 编辑器编辑,提交时执行js,获得编辑器的内容,赋值给textarea,用于向后台提交存入数据库 -->
<textarea rows="5" cols="35" name="usIntroduce" style="display:none;" id="introduce"></textarea>
<div id="editor">
{#        <p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p>#}
        <p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p><p><img src="/static/upload/cart.png" style="max-width:100%;"></p>
</div>
        <!-- 注意, 只需要引用 JS,无需引用任何 CSS !!!-->
        <script type="text/javascript" src="/static/wangEditor.js"></script>
        <!-- 设置全屏功能的两个js文件,先引入jquery-3.2.1.min.js,在引入wangEditor-fullscreen-plugin.js -->
       
        <script type="text/javascript">
            var E = window.wangEditor
            var editor = new E('#editor')
            /* 处理上传图片的controller路径 */
             editor.customConfig.uploadImgServer = '/edit/image/'                                                                                                         /* 定义上传图片的默认名字 */
             editor.customConfig.uploadFileName = 'myFileName'
            // 或者 var editor = new E( document.getElementById('editor') )
            editor.create()
            //初始化全屏插件
        </script>
</div> 
<input type="submit" value="提交"></input>
{% csrf_token %}
</form> </body>
</html>

---前端代码

from django.shortcuts import render,HttpResponse
from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt
from suibi1.settings import upload_img
import os
# Create your views here.
def index(request):
if request.method=='GET':
return render(request,'index.html')
elif request.method=="POST":
print(request.POST.get('usIntroduce'))
return HttpResponse('提交成功') @csrf_exempt
def image(request):
if request.method=="POST":
a = request.FILES['myFileName']
name = a.name
with open(os.path.join(upload_img,name),'wb') as f:
f.write(a.file.read())
print('图片写入成功')
return JsonResponse({"errno": 0, "data":[os.path.join('/static/upload',name),]})

--django_views

django 发帖时碰到的图片上传的更多相关文章

  1. django + ckeditor + 七牛云,图片上传到七牛云

    传送门 本人使用的是 Django 的自带的管理后台,安装 ckeditor 富文本编辑器后,上传图片的时候直接传到七牛云的.

  2. Django中怎么做图片上传--图片展示

    1.首先是html页面的form表单的三大属性,action是提交到哪,method是提交方式,enctype只要有图片上传就要加这个属性 Django框架自带csrf_token ,所以需要在前端页 ...

  3. 百度编辑器contentChange监听不到图片上传

    将ueditor组件化到java项目中,当调用组件后,绑定函数,监听contentchange如下图: um.addListener("contentChange",functio ...

  4. layui图片上传之后后台如何修改图片的后缀名以及返回数据给前台

    const pathLib = require('path');//引入node.js下的一个path模块的方法,主要处理文件的名字等工作,具体可看文档 const fs = require(''fs ...

  5. Django配置图片上传

    本文首先实现django中上传图片的过程,然后解决富文本编辑器文件上传的问题. 一. 上传图片 1.在 settings.py 中配置MEDIA_URL  和 MEDIA_ROOT 在 D:\blog ...

  6. kindeditor更改图片上传时网络图片的路径

    当我们想要使用kindeditor的图片上传功能时,有两种选择图片方式,一种是本地选择,一种是在图片空间中选择,图片空间的默认地址是server上的/kindeditor/attached/image ...

  7. js基础进阶--图片上传时实现本地预览功能的原理

    欢迎访问我的个人博客:http://www.xiaolongwu.cn 前言 最近在项目上加一个图片裁剪上传的功能,用的是cropper插件,注意到选择本地图片后就会有预览效果,这里整理一下这种预览效 ...

  8. 配置django图片上传与保存展示

    近来在研究django,发现有好多好玩的功能,比如图片上传,以前处理这个比较麻烦,现在我们来看看如何来处理图片上传与保存 1.在数据库设计的时候需要配置upload_to image = models ...

  9. django之创建第10-1个项目-图片上传并记录上传时间

    1.百度云盘:django之创建第10-1个项目-图片上传并记录上传时间 2.主要修改的配置文件有3个,forms.views和models3个文件以及html 3.forms.py文件修改 #cod ...

随机推荐

  1. ES6深入浅出-5 新版对象-2.属性修饰符

    对象语法增强 已经有了个对象的新增语法 还需要一个api来做呢?. 因为有的时候,你需要在旧的对象上添加get.set. 读的时候就走get 写的时候就走set 假设很早之前在项目里写了一个old对象 ...

  2. 让pc端代码适用移动端——<meta name="viewport"

    写的代码,在pc端运行正常,在移动端就很小很小,需要放大.这时候可引入这个标签 @参考博客 用法,在<head></head>中添加<meta name="vi ...

  3. Swift4.0复习Optional

    1.Optional基本使用: 当我们声明一个Optional对象时,无论该对象是在文件作用域还是在函数体内作为局部对象声明,如果不对它初始化,那么它的值默认为空(nil). // 声明a为Int类型 ...

  4. 进程间通信之pipe

    实现数据传递 两个进程之间通信 多个进程之间通信,会导致数据不安全,需要加锁,示例 分类 无名管道:父子间进程通信 有名管道:父子间进程通信:任意两个进程之间通信 创建管道方法 os.mkfifo(p ...

  5. C++ 三大特性 继承(转载)

    继承 继承:类的继承,就是新的类从已有类那里得到已有的特性.原有的类称为基类或父类,产生的新类称为派生类或子类. 基本语法 派生类的声明: class 派生类名:继承方式 基类名1, 继承方式 基类名 ...

  6. PHP中的重载技术

    PHP中的重载技术 通常面向对象语言的重载技术 其基本语法是这样的: 在一个类中,有多个同名的方法,每个方法的参数不同而已.这种现象就称为“重载”. 参数不同可以是:数量个数不同,或类型不同,或顺序不 ...

  7. 微信小程序之页面传值并且根据产品类别(主从关系)的赋值操作

    <view class="title"> <view class="titleName">{{cname}}</view> ...

  8. CSS float属性

    表示向左浮动,比如多个div在一个页面上,默认情况是:一行一个div,但是只要在div的css中使用float:left,可以使一行有多个div,这样可以把网页划分成很多块,但是使用该属性会影响后面的 ...

  9. Hue,Oozie运行sqoop找不到驱动解决办法

    一.前言 平台:CDH 5.13.0 公司在客户那边有个项目需要部署cloudera平台,部署的时候,在这个版本的cdh中,除了基本组件,还选了sqoop2作为数据传输工具,希望能在Oozie中通过工 ...

  10. 请求部署在 IIS7.5 上的 REST 服务的 Put/Post/Delete 操作发生 HTTP Error 405.0 - Method Not Allowed 错误之解决

    背景 请求部署在 IIS7.5 上的 REST 服务的 Put/POST/DELETE 操作发生 HTTP Error 405.0 - Method Not Allowed 错误. Issue 解决 ...