В Django, как можно получить доступ к полям файла в forms.py? - PullRequest
0 голосов
/ 23 июня 2011

У меня есть этот класс формы в forms.py в моем приложении Django:

class EmailForm(EmailFormWithoutAttachment):
    attachment = forms.FileField()

Я хотел бы получить доступ к файлу, загруженному в 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».Обязательный запрос. ФАЙЛЫ к форме подачи.Я также использую enctype = "multipart / form-data" в моих формах.Мне было интересно, как правильно получить доступ к данным FileField в forms.py.

Спасибо.

1 Ответ

4 голосов
/ 23 июня 2011

Используйте self.cleaned_data['attachment'] вместо self.data['attachment'].

...