对于超过2.5M的文件,FileField.save()
如何在幕后工作?我在另一篇文章中读到,FileField.save()
将对要保存的文件进行自动分块。但是如果要将文件保存到与保存超过2.5M的文件的tmp目录相同的机器上,是否需要分块?在tmp目录位于我要保存文件的同一台机器上的大文件大小上载情况下,是save()
只是mv
从tmp目录到目标目录的文件并绕过分块? / p>
答案 0 :(得分:1)
这不是在将上传文件保存到模型时处理上传文件,在这种情况下移动使用。它是关于在上传过程中存储该文件 - 小文件被放入内存,较大的文件被分成块并在临时文件中写入。
关于保存文件:
https://github.com/django/django/blob/master/django/db/models/fields/files.py
https://github.com/django/django/blob/master/django/core/files/storage.py
关于上传:
https://github.com/django/django/blob/master/django/core/files/uploadedfile.py