gpt4 book ai didi

django - 在 Django 中使用 PasswordResetForm

转载 作者:行者123 更新时间:2023-12-04 04:37:42 25 4
gpt4 key购买 nike

我的问题是:当我提交表单时,它落入 else:下面是我在我看来定义的块。

我要完成的任务:允许用户使用内置的 django 1.5 重置密码 PasswordResetForm Django auth 中的功能

Views.py

def UserResetPassword(request):
form = UserForgotPasswordForm(None, request.POST)
if request.method == 'POST':
if form.is_valid():
form.save(from_email='admin@thedomain.com',email_template_name='mysite/reuse/forgotpassword.html', use_https=False,token_generator=default_token_generator, html_email_template_name=None)
else:
return HttpResponse("Are you sure you entered that correctly?")

return render(request, 'mysite/reuse/forgotpassword.html', {
'form':form
})

提交表单后,它会输出: Are you sure you entered that correctly? (例如,从 else: 条件发送的值

我在这里做错了什么?

最佳答案

我看到几个问题:

def UserResetPassword(request):
form = UserForgotPasswordForm(request.POST or None) #data=is request.POST or None
if request.method == 'POST':
if form.is_valid():
form.save(from_email = 'admin@thedomain.com', email_template_name= 'mysite/reuse/forgotpassword.html', use_https = False, token_generator = default_token_generator, html_email_template_name=None)

return render(request, 'mysite/reuse/forgotpassword.html', {
'form':form
})

另外,去掉 else部分。您希望能够看到错误是什么。 render()会显示错误。

在表格中,
fields = ("email")

应该是
fields = ("email", )

另外,你应该是 using PasswordChangeForm 如果您想要一个表单,让用户通过输入他们的旧密码来更改他/她的密码。

关于django - 在 Django 中使用 PasswordResetForm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19438600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com