使用django框架怎么一次性上传多个文件

本篇文章给大家分享的是有关使用django框架怎么一次性上传多个文件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

前端 html5 上传控件, 我用了jquery file upload

<inputtype="file"name="myfiles"multiple="">

使用django框架怎么一次性上传多个文件

选择多个文件之后, 然后提交请求,开启pydev debug 模式,查看request内容:

使用django框架怎么一次性上传多个文件

其中request.FILES 的内容为如下:

MultiValueDict: <MultiValueDict: {u'myfiles': [<InMemoryUploadedFile: 300x600.png (image/png)>, <InMemoryUploadedFile: todo.txt (text/plain)>]}>

很明显,上传的文件的确在其中,但是当用 request.FILES['myfiles'] 得到的确是最后一个。 而不能得到两个文件。跟踪代码发现,request.FILES 的类型为 MultiValueDict,这种字典类是特殊定义的,如果需要取得list 需要调用 getlist 方法,看到这里,豁然开朗,下面是得到上传的多个文件与处理的逻辑

files=request.FILES.getlist('myfiles')
forfinfiles:
destination=open('d:/temp/'+f.name,'wb+')
forchunkinf.chunks():
destination.write(chunk)
destination.close()

以上就是使用django框架怎么一次性上传多个文件,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注恰卡编程网行业资讯频道。

发布于 2021-04-15 01:55:36
收藏
分享
海报
0 条评论
176
上一篇:使用Node.js怎么实现一个大文件分片上传功能 下一篇:使用django-allauth怎么实现第三方登录
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码