Django 用户认证组件

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

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

时间: 2024-07-29 18:30:19

Django 用户认证组件的相关文章

16 django用户认证组件

django用户认证组件 思考: 前一篇提到的seesion,当用户登录后会保存session. 浏览器再次访问会带上服务器返回的session:sessionid ---> 登录时随机生成的key 服务器拿到sessionid后去数据库匹配,匹配到后拿到一个字典数据:{a:b,c:d} 当数据有变化时,会更新某个值,如 c:d --> c:e ,那么直接更新数据库 {a:b,c:e},sessionid并不会变化,然后将原来的sessionid继续回传给浏览器. 这样的处理机制存在什么样的问

10.Django用户认证组件

用户认证组件: 功能:用session记录登录验证状态: 前提:用户表,django自带的auth_user 创建超级用户:python manage.py createsuperuser           kris的密码是abc123456 基于用户认证组件的登录验证信息储存 views.py from django.shortcuts import render, HttpResponse, redirect # Create your views here. from django.co

Django:(6)用户认证组件 & 中间件

用户认证组件 用户认证组件: 功能:用session记录登陆验证状态 前提:用户表:django自带的auth_user 创建超级用户的命令: python manage.py createsuperuser API: (1)from django.contrib import auth (auth模块的方法) 1. # 做验证:如果 验证成功 返回 user 对象(就是 auth_user 这张表中的一条记录对象),否则返回None user = auth.authenticate(usern

061.Python前端Django组件用户认证组件

一 auth认证组件 在使用pymysql,数据库迁移的时候.,默认生成有十张表如下 查看author_user表结构 mysql> desc auth_user; +--------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+---

Django 用户认证及OneToOneField

Django 用户认证如果自己不想写 就可以用django自带的认证 首选导入模块 models.py #!/usr/bin/env python #_*_ coding:utf8 _*_ from __future__ import unicode_literals from django.db import models from django.core.exceptions import ValidationError from django.contrib.auth.models imp

Django用户认证系统 authentication system

Django集成了用户登陆/验证/登出的模块,可以直接拿来使用,也可以进行定制,使用起来非常方便. 一,创建Django工程 $ django-admin.py startproject mysite 工程目录结构如下 [email protected]:~/Study/django$ tree mysite/ mysite/ ├── manage.py └── mysite ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py 1 di

14 Django的用户认证组件

用户认证 auth模块 1 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其中的三个: 1.1 .authenticate()    提供了用户认证,即验证用户名以及密码是否正确,一般需要username  password两个关键字参数 如果认证信息有效,会返回一个  User  对象.authenticate()会在User 对象上设置一个属性标识那种认证后端认证了该用户,且该信息在后面的登录过程中是需要的

Django的用户认证组件

用户认证 (一)auth模块 1 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其中的三个: 1.1 .authenticate()    提供了用户认证,即验证用户名以及密码是否正确,一般需要username  password两个关键字参数 如果认证信息有效,会返回一个  User  对象.authenticate()会在User 对象上设置一个属性标识那种认证后端认证了该用户,且该信息在后面的登录过程中是

django之用户认证组件

用户认证 auth模块 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其中的三个: 1.authenticate() 提供了用户认证,即验证用户名以及密码是否正确,一般需要username  password两个关键字参数如果认证信息有效,会返回一个User对象.authenticate()会在User 对象上设置一个属性标识那种认证后端认证了该用户,且该信息在后面的登录过程中是需要的.当我们试图登陆一个从数据