【发布时间】:2015-12-07 21:11:23
【问题描述】:
我正在更改帐户的密码。我从第一个视图获取用户名和密码,并将其传递给第二个视图它工作正常,但是当涉及到第二个视图表单验证时。它错误地重定向到第一个视图的表单。那是我的问题。
我的目标是如果第二次身份验证失败则丢弃数据(用户名和密码)不要更改密码。还有一件事我不希望用户通过获取请求访问第二个视图。
def first_view(request):
if request.method == 'POST':
form=firstForm(request.POST) # for getting username password
if form.is_valid():
return second_view(request) # Don't want HttpResponse here. To send POST request.
#Sending username and password data in POST request.
else:
form=firstForm()
return render(request,'template1.html',{'form':form})
这是通过在手机上发送文本代码的第二次身份验证
def second_view(request):
if request.method === 'POST':
form=secondForm(request.POST) # Single field - Code recieved on phone
username=request.POST['username']
password=request.POST['password']
code=GetRandomNumber() # Creates a random number to send on phone.
SendText(code,numer) # Sends code on number
if form.is_valid(): # HERE IT REDIRECTS TO THE FIRST VIEW FORM WITH ERROR
if code==request.POST['code']:
HttpResponse('Succeess')
else:
HttpResponse('Not allowed')
【问题讨论】:
标签: django validation post django-forms django-views