127.0.0.1重定向次数过多。
来源:9-5 退出登录接口开发
秦垚
2022-10-04
`class LoginView(View):
""“
用户登录(账号密码)逻辑
”""
def get(self, request, *args, **kwargs):
# 判断用户是否登录
if request.user.is_authenticated:
return HttpResponseRedirect(reverse(“index”))
# 用户未登录
return HttpResponseRedirect(reverse("login"))
def post(self, request, *args, **kwargs):
# 表单验证,验证前端用户传递的数据
login_form = LoginForm(request.POST)
if login_form.is_valid():
# 获取邮箱和密码
email = login_form.cleaned_data["email"]
password = login_form.cleaned_data["password"]
# 验证邮箱和密码,通过邮箱和密码查询用户是否存在
user = authenticate(username=email, password=password)
if user is not None:
# 查询到用户,判断用户是否通过邮箱链接验证
if user.is_active:
# 查询到用户,并登录
login(request, user)
# 登录成功后跳转到首页
return HttpResponseRedirect(reverse("index"))
else:
# 用户未通过邮箱验证
messages.error(request, '用户未激活,请前往激活')
return HttpResponseRedirect(reverse("login"))
else:
# 未查询到用户,跳转到登录页面并做错误消息提示
return HttpResponseRedirect(reverse("login"), {
"login_form": login_form,
"msg": "邮箱或者密码错误",
})
else:
# 未获取到邮箱或者密码
return HttpResponseRedirect(reverse("login"), {
"login_form": login_form,
})`
写回答
1回答
-
bobby
2022-10-08
你留个qq 我加你看看吧,或者你拷贝一下我给的源码中对应的源码再试试
00
相似问题