views.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:SpongeAuth 作者: lukegb 项目源码 文件源码
def forgot_step2(request, uidb64, token):
    if request.user.is_authenticated():
        return redirect(_login_redirect_url(request))

    bytes_uid = urlsafe_base64_decode(uidb64)
    try:
        uid = int(bytes_uid)
    except ValueError:
        raise SuspiciousOperation('forgot_step2 received invalid base64 user ID: {}'.format(
            bytes_uid))
    user = get_object_or_404(models.User, pk=uid)
    if not forgot_token_generator.check_token(user, token):
        raise Http404('token invalid')

    form = forms.ForgotPasswordSetForm(user=user)
    if request.method == 'POST':
        form = forms.ForgotPasswordSetForm(request.POST, user=user)
        if form.is_valid():
            user.set_password(form.cleaned_data['password'])
            user.save()
            messages.success(
                request, _('Your password has been reset, '
                           'and you have been logged in.'))
            return _log_user_in(request, user)
    return render(
        request, 'accounts/forgot/step2.html', {'form': form, 'user': user})
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号