В моей функции def clean я создал проверку, чтобы увидеть, есть ли у пользователя изображение, но нет тела, что является недопустимой комбинацией.
forms.py
def clean(self):
cleaned_data = super(ServicesForm, self).clean()
body = cleaned_data.get('body ')
image = cleaned_data.get('image')
if body != None and image == None :
self.add_error('image', "You must provide an image if you want to save the post.")
Это хорошо работает при создании поста. Ошибка появляется, если пользователь вводит текст в теле, но не предоставляет изображение. Однако, если пользователь возвращается к сообщению, в котором было предоставлено и тело, и изображение, и нажимает «очистить» в виджете изображения, он может сохранить форму без ошибок.
Из-за по другим причинам, я не хочу устанавливать изображение в качестве обязательного поля в этой форме. (Существует другая бизнес-логика c, которая контролирует, требуется ли изображение или нет).
Как я могу проверить в def clean (), чтобы увидеть, очистил ли пользователь изображение?
Спасибо!