Django 后台获取文件列表 InMemoryUploadedFile的例子

yipeiwu_com6年前Python基础

在使用Django项目中,From表单提交了图片集合

var formdata = new FormData();
formdata.append("csrfmiddlewaretoken",'{{ csrf_token }}');
if ($('.js_file')[0].files.length > 0){
 $.each($('.js_file')[0].files, function (index,file) {
  formdata.append("file",file);
 })
}

在高度模式的时候,可以看到

<MultiValueDict: {'file': [<InMemoryUploadedFile: wx_friends.png (image/png)>, <InMemoryUploadedFile: wx_qrcode.png (image/png)>, <InMemoryUploadedFile: wx_wechat.png (image/png)>]}>

用:imgs = request.FILES.get('file') 获取,却只能获取一个文件,

原因在于django 默认是只处理单个文件上传的,要一次性批量处理多个文件上传就得采用这种方法。MultiValueDict这种字典类是特殊定义的,如果需要取得list 需要调用 getlist方法

所以获取图片的正确方式是

request.FILES.getlist('file')

这样拿出来的就是一个 InMemoryUploadedFile 类的list ,接下来该怎么处理就怎么处理了。

以上这篇Django 后台获取文件列表 InMemoryUploadedFile的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中查看变量的类型内存地址所占字节的大小

Python中查看变量的类型,内存地址,所占字节的大小 查看变量的类型 #利用内置type()函数 >>> nfc=["Packers","49"] >>...

Python实现简单截取中文字符串的方法

本文实例讲述了Python实现简单截取中文字符串的方法。分享给大家供大家参考。具体如下: web应用难免会截取字符串的需求,Python中截取英文很容易: >>>...

连接Python程序与MySQL的教程

MySQL是Web世界中使用最广泛的数据库服务器。SQLite的特点是轻量级、可嵌入,但不能承受高并发访问,适合桌面和移动应用。而MySQL是为服务器端设计的数据库,能承受高并发访问,同...

Python提示[Errno 32]Broken pipe导致线程crash错误解决方法

本文实例讲述了Python提示[Errno 32]Broken pipe导致线程crash错误解决方法。分享给大家供大家参考。具体方法如下: 1. 错误现象 ThreadingHTTPS...

详解python字节码

Python对不可变序列进行重复拼接操作效率会很低,因为每次都会生成一个新的对象,解释器需要把原来对象中的元素先复制到新的对象里,然后再追加新的元素。 但是CPython对字符串操作进行...