def reset_pwd_validate(request, key): try: if request.method == 'POST': form = ResetPasswordForm(request.POST) if form.is_valid(): user = UserResetPassword.objects.get(reset_key=key).user form.save(user=user) messages.success(request, 'New password is accept, please login.') return HttpResponseRedirect("/login/") else: form = ResetPasswordForm() return {'reset_key':key, 'form': form} except (KeyError, UserResetPassword.DoesNotExist): messages.warning(request, 'The link in validation mail is wrong, please reset again.') return HttpResponseRedirect("/")
def password_reset(request): if request.method == "POST": password_reset_form = ResetPasswordForm(request.POST) if password_reset_form.is_valid(): email = password_reset_form.save() return direct_to_template(request, "account/password_reset_done.html", { "email": email, }) else: password_reset_form = ResetPasswordForm() return direct_to_template(request, "account/password_reset.html", { "password_reset_form": password_reset_form, })
def password_reset(request): if request.method == "POST": password_reset_form = ResetPasswordForm(request.POST) if password_reset_form.is_valid(): email = password_reset_form.save() return render_to_response("account/password_reset_done.html", { "email": email, }, context_instance=RequestContext(request)) else: password_reset_form = ResetPasswordForm() return render_to_response("account/password_reset.html", { "password_reset_form": password_reset_form, }, context_instance=RequestContext(request))
def reset_password(request, userid, token): msg = "" breadcrumb = [{"name": u"首页", "url": "/"}, {'name': u'重置密码'}] try: django_user = DjangoUser.objects.get(id=userid) if not default_token_generator.check_token(django_user, token): msg = u"参数错误!" form = ResetPasswordForm(user=django_user) return render_template("reset_password.html", request, breadcrumb=breadcrumb, msg=msg, form=form) except ObjectDoesNotExist: msg = u"该用户不存在!" form = ResetPasswordForm(user=None) return render_template("reset_password.html", request, breadcrumb=breadcrumb, msg=msg, form=form) if request.method == "POST": form = ResetPasswordForm(user=django_user, data=request.POST) if form.is_valid(): form.save() return redirect(reverse("account.views.login")) else: form = ResetPasswordForm(user=django_user) return render_template("reset_password.html", request, breadcrumb=breadcrumb, msg=msg, form=form)