如何将大于2.5MB的文件上载到django?

如何将大于2.5MB的文件上载到django?,django,file-upload,Django,File Upload,我的目标是将大于2.5MB的文件上传到django服务器。我可以上传文件,如果它小于2.5MB,如果文件大于2.5MB,我会在浏览器中看到413负载太大。我不明白为什么 我设置了MAX\u UPLOAD\u SIZE=429916160MEDIA\u ROOT=os.path.join(基本目录“文件”) 在my settings.py中,媒体URL='/files/'和文件上传最大内存大小=MAX上传大小。目前我使用的django开发服务器没有apache或nginx My models.py

我的目标是将大于2.5MB的文件上传到django服务器。我可以上传文件,如果它小于2.5MB,如果文件大于2.5MB,我会在浏览器中看到
413负载太大
。我不明白为什么

我设置了
MAX\u UPLOAD\u SIZE=429916160
MEDIA\u ROOT=os.path.join(基本目录“文件”)
在my settings.py中,媒体URL='/files/'
文件上传最大内存大小=MAX上传大小。目前我使用的django开发服务器没有apache或nginx

My models.py:

def验证文件扩展名(值):
ext=os.path.splitext(value.name)[1]#[0]返回路径+文件名
有效的_扩展=['.vsdx']
如果不是有效扩展名中的ext.lower():
引发ValidationError(u'不支持的文件扩展名')
类上载文件(models.Model):
user=models.ForeignKey(用户,on_delete=models.CASCADE)
file=models.FileField(upload\u to=path,validators=[validate\u file\u extension])
上传时间=models.DateTimeField(默认值=时区.now)
定义(自我):
返回self.user.username+'/'+self.file.name
views.py:

if request.method==“GET”:
upload\u file\u form=UploadFileForm()
all_files=UpLoadFile.objects。选择与之相关的(“用户”).filter(用户用户名=request.user)。all().order_by(“-uploaded_at”)
返回呈现(请求'interface/files.html',{'page_title':'Datoteke',
“文件”:所有_文件,
“上载文件格式”:上载文件格式})
elif request.method==“POST”:
如果request.POST中有“上载文件”:
file\u name=request.FILES.get(“文件”)
username=request.user
如果bool(os.path.exists(f'files/{username}/{file\u name}')):
messages.error(请求“Datoteka s tem imenomže obstaja!”)
返回重定向('文件')
其他:
upload\u file\u form=UploadFileForm(request.POST,request.FILES)
上传文件\u form.instance.user=用户名
如果上传文件表单有效():
上传文件表单保存()
消息。成功(请求“Datoteka je uspešno dodana!”)
返回重定向('文件')
messages.error(请求“Te vrste datoteke ni mogoče naložiti na server.Preveriteče ima datoteka.vsdx končnico.”)
返回重定向('文件')
我应该设置什么才能上传大于2.5MB的文件?
如果您能就如何处理此类文件提供任何建议,我将不胜感激。

请将其包含在您的settings.py文件中

DATA_UPLOAD_MAX_MEMORY_SIZE = 50242880

请尝试我下面发布的答案,并让我知道它是否有效。如果您希望跳过所有尺寸的检查,可以将此值设置为“无”。
DATA_UPLOAD_MAX_MEMORY_SIZE = 50242880