说明:

  • 如果需求是注册成功后即表示用户认证通过,那么此时可以在注册成功后实现状态保持
  • 如果需求是注册成功后不表示用户认证通过,那么此时不用在注册成功后实现状态保持

当前的需求是:注册成功后即表示用户认证通过

1. login()方法介绍

  1. 状态保持:

    • 将通过认证的用户的唯一标识信息(比如:用户ID)写入到当前session会话中
  2. login()方法:
    • Django用户认证系统提供了login()方法
    • 封装了写入session的操作,帮助我们快速实现状态保持
  3. login()位置:

    • django.contrib.auth.__init__.py文件中

      login(request, user)
      

2. login()方法使用

# 保存注册数据
try:user=User.objects.create_user(username=mobile,mobile=mobile, password=password)
except DatabaseError:return HttpResponseBadRequest('注册失败')# 实现状态保持
login(request, user)# 响应注册结果
return redirect(reverse('home:index'))

3. 查看状态保持结果

【 注册成功后cookie中的session_id和redis中的session信息相同】

4. 设置首页所需的用户名信息和登录状态

1.设置cookie代码

        # 保存注册数据try:user=User.objects.create_user(username=mobile,mobile=mobile, password=password)except DatabaseError:return HttpResponseBadRequest('注册失败')# 实现状态保持from django.contrib.auth import loginlogin(request, user)#跳转到首页response = redirect(reverse('home:index'))#设置cookie#登录状态,会话结束后自动过期response.set_cookie('is_login',True)#设置用户名有效期一个月response.set_cookie('username',user.username,max_age=30*24*3600)return response

2.查看cookie数据

Django博客系统(状态保持)相关推荐

  1. Django博客系统注册(定义用户模型类)

    1. Django默认用户认证系统 Django自带用户认证系统 它处理用户账号.组.权限以及基于cookie的用户会话. Django认证系统位置 django.contrib.auth包含认证框架 ...

  2. Django博客系统项目需求分析

    项目需求分析 需求分析原因 项目中,需求驱动开发.即开发人员需要以需求为目标来实现业务逻辑. 需求分析方式 企业中,借助产品原型图分析需求. 需求分析完后,前端按照产品原型图开发前端页面,后端开发对应 ...

  3. Django博客系统(详情评论数据展示)

    1. 查询评论数据并展示 1.查询评论数据并通过context传递给HTML from home.models import Comment from django.shortcuts import ...

  4. Django博客系统(详情页面展示)

    1. 页面展示 1.在home.views.py文件中定义视图 from django.views import Viewclass DetailView(View):def get(self,req ...

  5. Django博客系统(首页文章数据展示)

    1. 查询分页数据并展示 1.查询分类文章数据并通过context传递给HTML from home.models import ArticleCategory,Article from django ...

  6. Django博客系统(首页分类数据展示)

    1. 首页接口设计 1.请求方式 选项 方案 请求方法 GET 请求地址 /?cat_id=xxx&page_num=xxx&page_size=xxx 2.请求参数 参数名 类型 是 ...

  7. Django博客系统(用户中心展示)

    1. 页面展示 1.在users.views.py文件中定义视图 from django.views import Viewclass UserCenterView(View):def get(sel ...

  8. Django博客系统(退出登录)

    1. logout()方法介绍 退出登录: 回顾登录:将通过认证的用户的唯一标识信息,写入到当前session会话中 退出登录:正好和登录相反(清理session会话信息) logout()方法: D ...

  9. Django博客系统(推荐文章数据展示)

    1. 添加文章浏览量数据 1.每次请求文章详情时给浏览量+1 try:article=Article.objects.get(id=id) except Article.DoesNotExist:re ...

最新文章

  1. YII2 模型关联之 一对多
  2. OCP12C题库,63数据库管理( Administration Workshop- 63)(新增)
  3. 字符设备驱动初体验(hello驱动)
  4. 初始Bootstrap
  5. 必读:Java Java
  6. 计算机仿真在机械应用,浅谈计算机仿真在机械的应用.doc
  7. js php 中文乱码怎么解决_php中文乱码怎么解决
  8. 自定义控件-----输入框
  9. Apache Shiro SessionManager配置详解.
  10. 求数的绝对值一定是正数_有理数的绝对值难,那是因为你这些知识点和题型没掌握...
  11. httpd安装、配置、编译三种访问模式控制https证书的安装访问实例及排错
  12. 监控树莓派Raspberry Pi的CPU/GPU的温度
  13. 已知图片顶点坐标和点相对图片位置求点坐标
  14. 将当前容器保存为本地镜像
  15. 基恩士CSV点云文件转PCD文件 PYTHON版
  16. 兼莱宝分享:表情包项目的玩法思路,轻松在家制作表情包赚钱
  17. 网络时代,如何增进亲情
  18. 第八章 实践 运行代码
  19. 全网最全Python金融大数据挖掘与分析,基础篇(附源代码,pycharm专业版无限期申请)
  20. 地图投影之UTM和高斯克里格投影

热门文章

  1. 结合Flink,国内自研,大规模实时动态认知图谱平台——AbutionGraph |博文精选
  2. Instagram个性化推荐工程中三个关键技术是什么?
  3. 这些算法工程师,他们真的是太难了!
  4. 百度AI攻坚战:PaddlePaddle中国突围
  5. 少走弯路:强烈推荐的TensorFlow快速入门资料(可下载)
  6. “含光”剑出,谁与争锋?阿里重磅发布首颗AI芯片含光800
  7. 从发展滞后到不断突破,NLP已成为AI又一燃爆点?
  8. 超阿里、大华,澎思科技行人再识别(ReID)技术刷新三大数据集记录
  9. 从0到1 | 文本挖掘的传统与深度学习算法
  10. AI一分钟 | 小米公布Q2财报,上市以来股价振幅高达30%;俄制造商推出步行杀手机器人...