Python Django-didn';t返回HTTPResponse对象
对不起,如果我的英语不好,但如果你需要问题,我在这里:) 我在Django中看到了很多关于HttpResponse对象的答案,但我无法解决它 通常情况下,用户插入其电子邮件地址以接收有关其新密码的电子邮件Python Django-didn';t返回HTTPResponse对象,python,django,Python,Django,对不起,如果我的英语不好,但如果你需要问题,我在这里:) 我在Django中看到了很多关于HttpResponse对象的答案,但我无法解决它 通常情况下,用户插入其电子邮件地址以接收有关其新密码的电子邮件 def forgottenPwdEmail(request): if request.method == 'POST': form = PasswordResetRequestForm(request.POST) user = User.objects.
def forgottenPwdEmail(request):
if request.method == 'POST':
form = PasswordResetRequestForm(request.POST)
user = User.objects.get(username=request.user.username)
user.confirmed = True
user.save()
sendResetPasswordMail(user, request.META['HTTP_HOST'])
else:
form = PasswordResetRequestForm()
return render(request, 'front/reset_password_form.html', {'form': form})
显示这些错误后:“视图”未返回HttpResponse对象。它没有返回任何结果。我无论如何都可以接收邮件,所以问题出在这个函数中,但我无法解决它
如果您有一些想法,我是开放的:)这是因为您的视图没有返回对POST请求的响应。 当电子邮件成功发送时,您应该添加类似于page的内容,如:
def forgottenPwdEmail(request):
if request.method == 'POST':
form = PasswordResetRequestForm(request.POST)
user = User.objects.get(username=request.user.username)
user.confirmed = True
user.save()
sendResetPasswordMail(user, request.META['HTTP_HOST'])
return redirect('/password-reset-email-sent/')
......
这是因为您的视图没有返回POST请求的响应。 当电子邮件成功发送时,您应该添加类似于page的内容,如:
def forgottenPwdEmail(request):
if request.method == 'POST':
form = PasswordResetRequestForm(request.POST)
user = User.objects.get(username=request.user.username)
user.confirmed = True
user.save()
sendResetPasswordMail(user, request.META['HTTP_HOST'])
return redirect('/password-reset-email-sent/')
......
您的if语句中缺少一个返回
def forgottenPwdEmail(request):
if request.method == 'POST':
form = PasswordResetRequestForm(request.POST)
user = User.objects.get(username=request.user.username)
user.confirmed = True
user.save()
return sendResetPasswordMail(user, request.META['HTTP_HOST'])
else:
form = PasswordResetRequestForm()
return render(request, 'front/reset_password_form.html', {'form': form})
我假设sendResetPasswordMail也返回HttpResponse
希望这对您有所帮助您的if语句中缺少一个返回
def forgottenPwdEmail(request):
if request.method == 'POST':
form = PasswordResetRequestForm(request.POST)
user = User.objects.get(username=request.user.username)
user.confirmed = True
user.save()
return sendResetPasswordMail(user, request.META['HTTP_HOST'])
else:
form = PasswordResetRequestForm()
return render(request, 'front/reset_password_form.html', {'form': form})
我假设sendResetPasswordMail也返回HttpResponse
希望这有帮助