0

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」に「attachment」が見つからないというエラーが表示されることです。request.FILES を送信フォームにバインドしています。フォームで enctype="multipart/form-data" も使用しています。私は、forms.py で FileField データにアクセスする適切な方法は何だろうと思っていました。

ありがとうございました。

4

1 に答える 1

4

self.cleaned_data['attachment']の代わりに使用しself.data['attachment']ます。

于 2011-06-22T23:02:51.577 に答える