前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >框架篇-Django博客应用-用户系统

框架篇-Django博客应用-用户系统

作者头像
小团子
发布2019-07-18 11:04:10
4630
发布2019-07-18 11:04:10
举报
文章被收录于专栏:数据云团数据云团

django 自带的用户验证系统,主要包括 登录、注册、注销、重置密码...

创建管理员用户

在终端虚拟环境对应的 manage.py 文件目录下,输入:

$ python manage.py createsuperuser

然后根据提示输入管理员的用户名、邮箱和密码。

或者 在 Pycharm 下执行 createsuperuser 命令行

输入刚才注册的用户名和密码登录后,进入站点管理页面

进入 django 管理后台时,也有一个登录页面,那是管理员用来登录到管理后台的,而不是普通用户的登录页面。

使用 Django 自带的用户身份验证视图

在 blog/blog/urls.py 文件中添加:

代码语言:javascript
复制
urlpatterns = [
    path("", include("django.contrib.auth.urls")),
]

它包含了如下的这些 url:

  1. login/ [name='login']
  2. logout/ [name='logout']
  3. password_change/ [name='password_change']
  4. password_change/done/ [name='password_change_done']
  5. password_reset/ [name='password_reset']
  6. password_reset/done/ [name='password_reset_done']
  7. reset/<uidb64>/<token>/ [name='password_reset_confirm']
  8. reset/done/ [name='password_reset_complete']

先来实现 login ,login 默认的模版是 registration/login.html ,此模版需要手动去创建。

  • 在 blog/templates/ 目录下创建 registration/ 目录,然后在 blog/templates/registration/ 目录创建 login.html 文件:
代码语言:javascript
复制
{% if user.is_authenticated %}{% endif %}

is_authenticated 是 user 对象自带的方法,用来检测用户是否登录。

代码语言:javascript
复制
<a href="{% url 'password_reset' %}">忘记密码?</a>

密码重置链接,点击进入密码重置页面。

设置登录成功后的跳转页面

在登录成功后,默认的跳转页面是 /accounts/profile/;可以在 settings.py 文件中修改:

代码语言:javascript
复制
LOGIN_REDIRECT_URL = '/blog/'

登录成功后,会跳转到博客首页。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-01-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据云团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档