Как изменить начальное значение поля, если значение clean_{FOO} недопустимо?

#django #django-forms

Вопрос:

У меня есть форма модели с чистой функцией для поля.

Я хочу изменить начальное значение поля на основе некоторой условной логики в поле:

 class MyForm(forms.ModelForm):  text_field_1 = forms.CharField()   def clean_text_field_1(self):  data = self.cleaned_data['text_field_1']  if data == 'Hello':  self.initial['text_field_1'] = 'Goodbye'  return ValidationError('Don't say Hello',  code='invalid_input')    return data  

Однако я не могу получить доступ к self.fields свойству формы из clean функции (оно не вносит никаких изменений). Как мне это сделать?