day76 auth模块 用户验证,

Posted 孟郊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day76 auth模块 用户验证,相关的知识,希望对你有一定的参考价值。

 

 

我们的登录验证是浏览器级别的验证还有用户级别的验证,

使用我们的django内部的数据库表,auth_user,然后使用它内部的一些模块和方法,

在视图函数里面需要引入模块写逻辑代码:

from django.shortcuts import render,redirect

# Create your views here.

from django.contrib import auth
from django.contrib.auth.models import User
# 以上两句是固定模式, def log_in(request): if request.method=="POST": user=request.POST.get("user") pwd=request.POST.get("pwd") # 验证成功,返回user对象,否则返回None user=auth.authenticate(username=user,password=pwd) if user: auth.login(request,user) # session写操作 return redirect("/index/") return render(request,"login.html") def index(request): print(request.user) print(type(request.user)) # if not request.user.id: # return redirect("/login/") # user=request.user # if not user.is_authenticated():return redirect("/login/") return render(request,"index.html",locals()) def log_out(request): auth.logout(request) return redirect("/login/") def reg(request): User.objects.create_user(username="egon123",password="1234") return redirect("/login/")

 

在验证中我们有几种状态固定语句:

登录:

user1=auth.authenticate(username=user,password=pwd)

auth.login(request,user1)  # 类似于session写操作

==============================================================

退出登录状态:

auth.logout(request)

request.session.flush()

=================================================

验证  :

user.is_authenticated()

登录状态时,返回True,否则返回False

===================================================

创建用户:

user.objects.create_user(username=‘egon‘,password=‘1234‘)

 

没写完...................................

以上是关于day76 auth模块 用户验证,的主要内容,如果未能解决你的问题,请参考以下文章

Nuxt Auth 模块经过身份验证的用户数据

auth认证模块

用户认证--------------auth模块

auth认证模块

用户认证--------------auth模块

用户认证--------------auth模块