关于django内置的登入验证 login_required

前言:在下只是一个简单的小白,只是想想记录下在使用django开发过程中遇到的问题与处理,如有问题真心的希望指出。下面说的是网站开发基本上有的登入验证。

一、使用login_required函数进行登入验证。

1、引入函数:from django.contrib.auth.decorators import login_required
2、需要配置跳转路由,在setting中配置LOGIN_URL=‘跳转路径’,就是当在未登入状态进入的路由。
3、用户表的model需要继承 AbstractUser
	引入  from django.contrib.auth.models import AbstractUser
	例如:
		class User(AbstractUser):
			‘’‘’
		具体内置字段请查阅资料或是引入后Ctrl+左键进入查看函数源码

1.1 使用装饰器的方式来配合使用

@login_required
def changelanguage(request):
pass

1.2 编写成继承对象。

from django.views import View
class LoginRequiredView(View):
    @classmethod
    def as_view(cls, **initkwargs):
        view = super(LoginRequiredView, cls).as_view()
        return login_required(view)
编写视图函数的时候继承就行了

2、控制登入过期时间

# ————登录过期时间
SESSION_COOKIE_AGE=60*60*24*2  按秒计算

3、数据库显示的登入时间

在登入后,登入的内容会放到django_session中
时间为过期时间

你可能感兴趣的:(Django)