我在Django应用程序的forms.py中有这个表单类:
class EmailForm(EmailFormWithoutAttachment):
attachment = forms.FileField()
我想通过clean函数访问forms.py上传的文件进行验证,以验证其名称。
def clean_attachment(self):
if self.data['attachment'].name == "someFileName.txt":
raise forms.ValidationError('This file is not allowed.')
return self.data['attachment']
然而,问题是错误指出“QueryDict”中找不到“附件”。我绑定request.FILES到提交表单。我也在我的表单上使用enctype =“multipart / form-data”。我想知道在forms.py中访问FileField数据的正确方法是什么。
谢谢。
答案 0 :(得分:4)
使用self.cleaned_data['attachment']
代替self.data['attachment']
。