我正在尝试做类似的事情:
Django:如何为允许多个文件上传的字段编写一个干净的方法?
用户可以使用上传一个或多个文件
<input type="file" name="images" multiple="multiple">
如果我使用接受的答案中提供的代码......
def clean_images(self):
files = self.files.getlist('images')
for file in files:
if file:
if file._size > 15*1024*1024:
raise forms.ValidationError("Image file is too large ( > 15mb ).")
else:
raise forms.ValidationError("Could not read the uploaded file.")
return files
... 然后 do ,如果任何上传的文件有问题form.is_valid()
,它将返回。False
我想做的是能够确定哪些文件是干净的,哪些不是,处理有效的文件,并告诉用户为什么无效的文件是无效的。
那么,是否可以在每个文件的基础上应用 clean 方法——即,将getlist
循环从 clean 方法中拉出,而是从循环中运行 clean 方法?