天天看点

Django登录访问限制 login_requeired

作用:

1. 用户登录之后才可以访问某些页面

2. 如果没登录,跳转到登录页面

3. 用户在跳转的登陆界面中完成登陆后,自动访问跳转到之前访问的地址

要实现这个需求很简单就是在相应的view前面使用装饰器 @login_required ,在settings.py中配置LOGIN_URL参数。

#views.py

from django.contrib.auth.decorators import login_required
from django.shorcuts import render 


@login_required
def index(request):
    return render(request, "index.html")
      
#url.py


(r'^accounts/login/$', VIEW),
#如果要使用django的默认登陆界面,则可以通过在urls.py中如此配置
...
(r'^accounts/login/$', 'django.contrib.auth.views.login'),
...
      

  

#settings.py
....
LOGIN_URL = '/account/login/'  #这个路径需要根据你网站的实际登陆地址来设置
....