Django限制未登录用户访问页面

限制所有页面未登录用户访问

views.py 里面的所有函数前加 @login_required

1
2
3
4
5
6
7
8
9
10
11
# 比如限制topics(主题页面)
--snip--
from django.contrib.auth.decorators import login_required

@login_required
def topics(request):
topics = Topic.objects.order_by('date_added')
context = {'topics':topics}
return render(request, 'myapp/topics.html', context)

--snip--

站点目录:settings.py 加上:

1
2
# 我的设置
LOGIN_URL = '/users/login' # 目的是限制未登录用户访问,随后重定向到login页面
———— The End ————