天天生鲜Django项目——4. 用户模块开发

父模板文件的抽象规则:

页面内容 是否放在父模板文件中 是否需要放预留block块
所有页面都有的内容
大多数页面都有的内容
少数页面有的内容
同一位置页面都有但内容不同

1.Django认证系统文档

http://python.usyiyi.cn/documents/django_182/topics/auth/default.html
预习方法:

方法名 备注
create_user 创建用户
authenticate 登录验证
login 记录登录状态
logout 退出用户登录
is_authenticated 判断用户是否登录
login_required装饰器 进行登录判断

2. 用户注册

django发送邮件

天天生鲜Django项目——4. 用户模块开发_第1张图片

celery 异步任务队列

天天生鲜Django项目——4. 用户模块开发_第2张图片

1) 使用

天天生鲜Django项目——4. 用户模块开发_第3张图片
天天生鲜Django项目——4. 用户模块开发_第4张图片

2) 发出任务

在这里插入图片描述

3) 启动worker

在这里插入图片描述

3. 用户激活

使用itsdangerous 加密用户的身份信息。

参考资料:
http://itsdangerous.readthedocs.io/en/latest/

  1. 加密用户身份信息
    天天生鲜Django项目——4. 用户模块开发_第5张图片
  2. 解密用户身份信息
    天天生鲜Django项目——4. 用户模块开发_第6张图片

4. 用户登录

配置redis作为Django缓存和session后端

天天生鲜Django项目——4. 用户模块开发_第7张图片

使用LoginRequireMixin:

天天生鲜Django项目——4. 用户模块开发_第8张图片
登录后跳转:
天天生鲜Django项目——4. 用户模块开发_第9张图片

5. 用户退出

logout函数清除登录用户的session信息。

6. 用户地址

模型类和模型管理器类

天天生鲜Django项目——4. 用户模块开发_第10张图片

7. 用户个人信息

redis存储历史浏览记录分析

天天生鲜Django项目——4. 用户模块开发_第11张图片

django-redis获取redis链接

在这里插入图片描述
在这里插入图片描述

你可能感兴趣的:(Django)