django ajax文件上传,1. Django系列之Django与ajax上传文件

html代码如下:

附件上传

开始上传附件

jqeury代码如下:

// 上传附件到方法

function FileUpload() {

var form_data = new FormData();

var file_info = $('#file_upload')[0].files[0];

form_data.append('file',file_info);

//if(file_info==undefined)暂且不许要判断是否有附件

//alert('你没有选择任何文件');

//return false

//}

// 提交ajax的请求

$.ajax({

url:"{% url 'post_apply_data' %}",

type:'POST',

data: form_data,

processData: false, // tell jquery not to process the data

contentType: false, // tell jquery not to set contentType

success: function(callback) {

console.log(order_id)

}

}); // end ajax

}

django-view代码如下:

def handle_upload(request):

file_obj = request.FILES.get('file')

if file_obj: # 处理附件上传到方法

request_set = {}

print('file--obj', file_obj)

#user_home_dir = "upload/%s" % (request.user.userprofile.id)

accessory_dir = settings.accessory_dir

if not os.path.isdir(accessory_dir):

os.mkdir(accessory_dir)

upload_file = "%s/%s" % (accessory_dir, file_obj.name)

recv_size = 0

with open(upload_file, 'wb') as new_file:

for chunk in file_obj.chunks():

new_file.write(chunk)

order_id = time.strftime("%Y%m%d%H%M%S",time.localtime())

cache.set(order_id,upload_file)

return HttpResponse(order_id)

至此,我们可以通过ajax正常上传文件了。

django系列6--Ajax05 请求头ContentType, 使用Ajax上传文件

一.请求头ContentType ContentType指的是请求体的编码类型,常见的类型共有三种: 1.application/x-www-form-urlencoded 这应该是最常见的 POST ...

django 基于form表单上传文件和基于ajax上传文件

一.基于form表单上传文件 1.html里是有一个input type="file" 和 ‘submit’的标签 2.vies.py def fileupload(request ...

Django框架 之 Form表单和Ajax上传文件

Django框架 之 Form表单和Ajax上传文件 浏览目录 Form表单上传文件 Ajax上传文件 伪造Ajax上传文件 Form表单上传文件 html 1 2 3 4 5 6 7

django上课笔记7-jQuery Ajax 和 原生Ajax-伪造的Ajax-三种Ajax上传文件方法-JSONP和CORS跨域资源共享

一.jQuery Ajax 和 原生Ajax from django.conf.urls import url from django.contrib import admin from app01 ...

IE8/9 JQuery.Ajax 上传文件无效

IE8/9 JQuery.Ajax 上传文件有两个限制: 使用 JQuery.Ajax 无法上传文件(因为无法使用 FormData,FormData 是 HTML5 的一个特性,IE8/9 不支持) ...

springMVC+jsp+ajax上传文件

工作中遇到的小问题,做个笔记 实现springMVC + jsp + ajax 上传文件 HTML

Ajax上传文件进度条显示

要实现进度条的显示,就要知道两个参数,上传的大小和总文件的大小 html5提供了一个上传过程事件,在上传过程中不断触发,然后用已上传的大 小/总大小,计算上传的百分比,然后用这个百分比控制div框的显 ...

伪ajax上传文件

伪ajax上传文件   最近在折腾伪ajax异步上传文件. 网上搜索了一下,发现大部分方法的input file控件都局限于form中,如果是在form外的呢? 必须动态生成一个临时form和临时if ...

flask jQuery ajax 上传文件

1.html 代码

ajax上传文件显示进度

下面要做一个ajax上传文件显示进度的操作,文末有演示地址 这里先上代码: 1.前端代码 upload.html

你可能感兴趣的:(django,ajax文件上传)