Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 26, 2011 00:43:02

Alex_Kutsan
От:
Зарегистрирован: 2010-03-25
Сообщения: 150
Репутация: +  0  -
Профиль   Отправить e-mail  

Собственная Проверка в формах.

Есть формочка

class Auth_form(forms.Form):
FirstName = forms.CharField()
LastName = forms.CharField()
Mail = forms.EmailField(required=False)
Year = forms.CharField()
#date = forms.DateField()
def clean_spec(self):
try :
self.cleaned_data
Y = int(data['Year'])
Person.objects.get(first_name = data['FirstName'],last_name=data['LastName'],year=Y,contact=data['Mail'])
return True
except: return False
в ней функция проверки данных по базе.

использую это я так
def contact(request):
if request.method == 'POST':
form = Auth_form(request.POST)
if form.is_valid():
if form.clean_spec():
return change_settings(request,True)
else:
form = Auth_form()
return render_to_response('contact_form.html', {'form': form})
почему-то проверка if form.clean_spec(): не проходит.
если ставлю else вот так
unindent does not match any outer indentation level (views.py, line 82)

def contact(request):
if request.method == 'POST':
form = Auth_form(request.POST)
if form.is_valid():
if form.clean_spec():
return change_settings(request,True)
else:
return HttpResponseRedirect('/')
else:
form = Auth_form()
return render_to_response('contact_form.html', {'form': form})
То завершаюсь с ошибкой unindent does not match any outer indentation level (views.py, line 82)
Это мне совсем не понятно.



Офлайн

#2 Июнь 26, 2011 19:16:43

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

Собственная Проверка в формах.

У вас не правильно отформатирован код.



Офлайн

#3 Июнь 29, 2011 15:14:09

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Собственная Проверка в формах.

Да и подход, честно говоря, сомнительный какой-то. Почему бы не делать то, что надо в общем clean, возвращать исключение, а сверху его ловить? В вашем случае можно вообще это делать в clean_Year.

Офлайн

#4 Июнь 29, 2011 15:14:10

Alex_Kutsan
От:
Зарегистрирован: 2010-03-25
Сообщения: 150
Репутация: +  0  -
Профиль   Отправить e-mail  

Собственная Проверка в формах.

Хммм… а вы не подскажете как правильно отформатировать?



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version