您的位置:首页 > 编程语言 > Go语言

django 使用自带的认证登录

2019-03-25 15:19 260 查看
from django.contrib.auth import authenticate, login
from django.contrib.auth.decorators import login_required
def user_login(request):
if request.method == 'POST':
uname =  request.POST['username']
upass = request.POST['password']
user = authenticate(username=uname, password=upass)
if user:
if user.is_active:
login(request, user)
return render(request, "index.html", {'user': user})
else:
return render(request, "login.html", {'errormsg': u"账号被锁定!"})
else:
return render(request, "login.html", {'errormsg': u"登录信息有误!"})
else:
return render(request, "login.html",)

@login_required
def profile(request, id):
return render(request, "profile.html",)

authenticate()函数返回一个user对象,但是authenticate和is_active验证通过后,只是完成了验证,并没有登录,还需要使用Login函数登录,否则后面request.user.is_authenticated为false,@login_required检查不通过.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: