到目前为止,我们开发的所有功能都是匿名访问的,这显然不够安全。通常我们会要求注册的用户通过用户名和密码登录,只有登录后的用户才可以管理产品。套用专业的说法就是:第一步是认证,验证用户是否是他所宣称的那个人;第二步是授权,验证用户是否拥有执行某种操作的权限。
Django已经提供了一个django.contrib.auth应用来处理登录、登出和权限验证,同时还提供了django.contrib.admin应用可以进行用户管理(admin应用还有很多其他的功能)。所以我们只需要将这些app插入到我们的站点,就可以实现登录和用户管理的大部分功能。
本节先介绍如何进行用户管理。
我们前面已经介绍过在Django中使用session,方法是打开'django.contrib.sessions'应用。该app是django.contrib.auth的基础,同时从该节我们也知道了如何在Django中加入应用,所以让我们快速行动起来:
首先在depot/settings.py中,打开MIDDLEWARE_CLASSES中的CommonMiddleware、SessionMiddleware和AuthenticationMiddleware:
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'

本文介绍了如何在Django项目中启用内置的用户管理和认证应用。通过添加相关中间件、同步数据库并创建超级用户,实现了用户登录和管理功能。访问/admin/可以查看Django的管理界面,通过设置配置文件实现中文界面。
最低0.47元/天 解锁文章
4316

被折叠的 条评论
为什么被折叠?



