我在我的模型中有一个ImageField,我使用forms.ModelForm来编辑表单。 我没有找到一种方法来使ModelForm限制上传的图像文件大小
答案 0 :(得分:1)
虽然这篇文章是2岁,但我遇到了类似的情况,即使我提出错误,文件仍然上传。 我为解决这个问题所做的是用None替换request.FILES [' file'],如下所示:
#The max size in bytes
MAX_SIZE = 1000
for filename, file in request.FILES.iteritems():
if request.FILES['file'].size > MAX_SIZE:
request.FILES.pop(filename, None)
# return your errors here
这解决了问题,文件将不会上传。希望这有助于遇到类似问题的其他人。
答案 1 :(得分:0)
以下是有关它的一些信息:http://docs.djangoproject.com/en/1.2/topics/http/file-uploads/
这样的事情:
#The max size in bytes
MAX_SIZE = 1000
if request.FILES['file'].size > MAX_SIZE:
#Lauch error
答案 2 :(得分:0)
现代浏览器支持客户端文件大小检查。最大的好处是你可以在上传之前拒绝文件。
if (typeof FileReader !== "undefined") {
var size = document.getElementById('myfile').files[0].size;
// check file size
}