我已经在Django中实现了密码恢复功能。用我的方法,新密码将发送到他输入的电子邮件ID。当我提供正确的电子邮件(数据库中存在的电子邮件ID)时,它的工作正常。但是,当我提供不在数据库中的电子邮件ID时,就会出现此错误“ DoesNotExist位于/ forgotPassword /
UniversityDetails匹配查询不存在。”。有人可以解决这个问题吗?将在此处粘贴我的代码。有人可以帮我解决这个问题。
forgotPassword.html()
def forgotPassword(request): if request.POST: email=request.POST.get("email") user = UniversityDetails.objects.get(email=email) if(not user): print "No user" return render_to_response("forgotPassword.html") else: newPassword = user.password send_mail('Password Recovery', 'The password for your site is '+ newPassword, 'rv_nair@gmail.com', ['rv_ks@gmail.com'], fail_silently=False) return render_to_response("passwordRecovery.html") return render_to_response('forgotPassword.html')
html
<form name="forgotPassword" method="POST" id="myFormid" action="http://10.1.0.90:8080/forgotPassword/"> <div style="float:center;width:100%;color:#0000A0"> Enter your E-mail ID</label><br/> <input type="text" name="email" size="25" /> <input type="submit" value="Submit" /> </div> </form >
try: user = UniversityDetails.objects.get(email=email) except UniversityDetails.DoesNotExist: user = None
我还看到你以明文形式存储密码(安全性高,请注意!)。为什么不使用内置的身份验证系统?