Я пытаюсь создать форму, которая обрабатывает проверку домена: форма должна завершиться сбоем на основе переменной, которая была установлена ранее в другой форме.
Как правило, когда пользователь хочет создать новый домен, эта форма должна завершиться ошибкой, если введенный домен существует.
Когда пользователь хочет переместить домен, эта форма должна завершиться ошибкой, если введенный домен не существует.
Я пытался сделать динамическую перегрузку <strong>init</strong>
, но не смог найти способ, чтобы передать мой переданный переменный в чистую функцию.
Я читал, что эта динамическая проверка может быть выполнена с использованием заводского метода, но, возможно, кто-то может мне помочь с этим?
Вот упрощенная версия формы:
#OrderFormStep1 presents the user with a choice: create or move domain
class OrderFormStep2(forms.Form):
domain = forms.CharField()
extension = forms.CharField()
def clean(self):
cleaned_data = self.cleaned_data
domain = cleaned_data.get("domain")
extension = cleaned_data.get("extension")
if domain and extension:
code = whoislookup(domain+extension);
#Raise error based on result from OrderFormStep1
#raise forms.ValidationError('error, domain already exists')
#raise forms.ValidationError('error, domain does not exist')
return cleaned_data