前端form提交文件,django收到文件:

使用data=request.FILES.get('name'),接收到一个文件对象,这是一个实例

类:django.core.files.uploadedfile.InMemoryUploadedFile

class InMemoryUploadedFile(UploadedFile):
"""
A file uploaded into memory (i.e. stream-to-memory).
"""
def __init__(self, file, field_name, name, content_type, size, charset, content_type_extra=None):
super().__init__(file, name, content_type, size, charset, content_type_extra)
self.field_name = field_name

def open(self, mode=None):
self.file.seek(0)
return self

def chunks(self, chunk_size=None):
self.file.seek(0)
yield self.read()

def multiple_chunks(self, chunk_size=None):
# Since it's in memory, we'll never have multiple chunks.
return False

 实例属性:

name,文件名,str类型

content_type, 字符串,对应 HTTP Content-type  

size,文件大小,int类型

实例方法:显然只有一个比较有用,chunks(),防止文件过大占用内存,将其转化为一个生成器。

 

 

 

相关文章:

  • 2021-06-12
  • 2022-12-23
  • 2021-06-19
  • 2021-09-20
  • 2021-06-10
  • 2021-10-04
  • 2022-02-02
  • 2022-12-23
猜你喜欢
  • 2021-10-27
  • 2022-12-23
  • 2022-12-23
  • 2021-08-06
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案