Size: a a a

Django [ru] #STAY HOME

2020 August 17

AG

Artem Gubatenko in Django [ru] #STAY HOME
Orekhov Web Dev.
как сделать form erors в кастомной форме регистрации?
Добавил поле phone uniqle=True
> phone uniqle=True
это в форме или в модели?
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Artem Gubatenko
> phone uniqle=True
это в форме или в модели?
в моделс, кажется я понял...
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Orekhov Web Dev.
в моделс, кажется я понял...
если из модели вернешь ValidationError, то форма отловит ее и выведет вверху (без привязки ошибки к полю)
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
тут то uniqle не работает, выдает сразу ошибку
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Artem Gubatenko
если из модели вернешь ValidationError, то форма отловит ее и выведет вверху (без привязки ошибки к полю)
не понял
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Artem Gubatenko
если из модели вернешь ValidationError, то форма отловит ее и выведет вверху (без привязки ошибки к полю)
сейчас если регаю юзера с не уникальным номером, он выводит ошибку
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Orekhov Web Dev.
тут то uniqle не работает, выдает сразу ошибку
проверяй в clean_phone() методе формы. Это проще чем объяснять за модель)
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Artem Gubatenko
проверяй в clean_phone() методе формы. Это проще чем объяснять за модель)
все еще не понял, как ее проверять?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Orekhov Web Dev.
все еще не понял, как ее проверять?
запрос с .exists()
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Artem Gubatenko
запрос с .exists()
прости, все еще не понимаю....
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Orekhov Web Dev.
прости, все еще не понимаю....
class MyForm(...):

 ...

 def clean_phone(self):
   if User.objects.filter(phone=self.cleaned_date["phone"]).exists():
     self.add_error("phone", forms.ValidationError("ERROR"))
   return self.cleaned_date["phone"]
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Artem Gubatenko
class MyForm(...):

 ...

 def clean_phone(self):
   if User.objects.filter(phone=self.cleaned_date["phone"]).exists():
     self.add_error("phone", forms.ValidationError("ERROR"))
   return self.cleaned_date["phone"]
'MyCustomSignupForm' object has no attribute 'cleaned_date'
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Orekhov Web Dev.
'MyCustomSignupForm' object has no attribute 'cleaned_date'
cleaned_data
ошибся в написани
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Artem Gubatenko
cleaned_data
ошибся в написани
нет, все правильно
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Orekhov Web Dev.
нет, все правильно
cleaned_date - не правильно)
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Artem Gubatenko
cleaned_date - не правильно)
а, да
но все ровно он ошибку выдает Traceback
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
вот форма
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
вот ошибка)
источник

AS

Alexander Shavelev in Django [ru] #STAY HOME
Orekhov Web Dev.
вот ошибка)
ну так пытаешься записать не уникальный телефон в бд
источник

O

Orekhov Web Dev. in Django [ru] #STAY HOME
Alexander Shavelev
ну так пытаешься записать не уникальный телефон в бд
это понятно, а как мне сделать что бы он писал это в form.error ?
источник