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

在使用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的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是 Django 后台获取文件列表 InMemoryUploadedFile的例子 的全部内容, 来源链接: utcz.com/z/360567.html

回到顶部