码迷,mamicode.com
首页 > 其他好文 > 详细

Django 用户认证组件

时间:2018-11-11 23:27:03      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:http   word   The   eth   返回   接受   报错   error   请求   

auth模块

# 创建超级用户
python manage.py createsuperuser
from django.contrib import auth

django.contrib.auth中提供了许多方法:

authenticate()

提供了用户认证功能,即验证用户名以及密码是否正确,一般需要username 、password两个关键字参数。

如果认证成功(用户名和密码正确有效),便会返回一个 User 对象。

authenticate()会在该 User 对象上设置一个属性来标识后端已经认证了该用户,且该信息在后续的登录过程中是需要的。

from django.contrib.auth import authenticate

user = authenticate(username="user",password="pwd")

login(HttpRequest, user)

该函数接受一个HttpRequest对象,以及一个认证了的User对象;该函数实现一个用户登录的功能。它本质上会在后端为该用户生成相关session数据。

from django.contrib.auth import authenticate, login

def log_in(request):
    if request.method == "POST":
        user = request.POST.get("username")
        pwd = request.POST.get("password")
        user = authenticate(username=user, password=pwd)
        if user is not None:
            login(request, user)
            # Redirect to a success page
            ...
        else:
            # Return an "invalid login" error message.
            ...
    return render(request, "login.html")

logout(request) 注销用户

该函数接受一个HttpRequest对象,无返回值。当调用该函数时,当前请求的session信息会全部清除。该用户即使没有登录,使用该函数也不会报错。

from django.contrib.auth import logout

def log_out(request):
  logout(request)
  # Redirect to a success page.

 

 

 

 

 

 

 

 

 

 

 

1

Django 用户认证组件

标签:http   word   The   eth   返回   接受   报错   error   请求   

原文地址:https://www.cnblogs.com/believepd/p/9943629.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!