修改密码

1. 修改密码后端逻辑

提示:

  • 修改密码前需要校验原始密码是否正确,以校验修改密码的用户身份。
  • 如果原始密码正确,再将新的密码赋值给用户。
class ChangePasswordView(LoginRequiredMixin, View):"""修改密码"""def get(self, request):"""展示修改密码界面"""return render(request, 'user_center_pass.html')def post(self, request):"""实现修改密码逻辑"""# 接收参数old_password = request.POST.get('old_password')new_password = request.POST.get('new_password')new_password2 = request.POST.get('new_password2')# 校验参数if not all([old_password, new_password, new_password2]):return http.HttpResponseForbidden('缺少必传参数')try:request.user.check_password(old_password)except Exception as e:logger.error(e)return render(request, 'user_center_pass.html', {'origin_pwd_errmsg':'原始密码错误'})if not re.match(r'^[0-9A-Za-z]{8,20}$', new_password):return http.HttpResponseForbidden('密码最少8位,最长20位')if new_password != new_password2:return http.HttpResponseForbidden('两次输入的密码不一致')# 修改密码try:request.user.set_password(new_password)request.user.save()except Exception as e:logger.error(e)return render(request, 'user_center_pass.html', {'change_pwd_errmsg': '修改密码失败'})# 清理状态保持信息logout(request)response = redirect(reverse('users:login'))response.delete_cookie('username')# # 响应密码修改结果:重定向到登录界面return response

urls.py

 #  修改密码url(r'^pass/$', views.ChangePasswordView.as_view(), name='pass'),

美多商城之用户中心(修改密码)相关推荐

  1. 美多商城之用户中心(添加和验证邮箱)

    二.添加和验证邮箱 2.1 添加邮箱后端逻辑 1. 添加邮箱接口设计和定义 1.请求方式 选项 方案 请求方法 PUT 请求地址 /emails/ # 添加邮箱url(r'^emails/$', vi ...

  2. Python_美多商城(用户中心)_5

    用户基本信息 用户基本信息逻辑分析 1. 用户基本信息逻辑分析 以下是要实现的后端逻辑 用户模型补充email_active字段 查询并渲染用户基本信息 添加邮箱 发送邮箱验证邮件 验证邮箱 提示: ...

  3. 美多商城之用户中心(用户基本信息)

    一.用户基本信息 1.1用户基本信息逻辑分析 1. 用户基本信息逻辑分析 以下是要实现的后端逻辑 用户模型补充email_active字段 查询并渲染用户基本信息 添加邮箱 发送邮箱验证邮件 验证邮箱 ...

  4. 美多商城之用户中心(收货地址3)

    三.收货地址 3.4 修改地址前后端逻辑 1. 修改地址接口设计和定义 1.请求方式 选项 方案 请求方法 PUT 请求地址 /addresses/(?P<address_id>\d+)/ ...

  5. 美多商城之用户中心(收货地址1)

    三.收货地址 用户地址的主要业务逻辑有: 展示省市区数据 用户地址的增删改查处理 设置默认地址 设置地址标题 3.1 省市区三级联动 1. 展示收货地址界面 提示: 省市区数据是在收货地址界面展示的, ...

  6. 美多商城之用户中心(收货地址2)

    三.收货地址 3.2 新增地址前后端逻辑 1. 定义用户地址模型类 1.用户地址模型类 from meiduo_mall.utils.models import BaseModelclass Addr ...

  7. Django博客系统(用户中心修改)

    1. 用户中心接口设计 1.请求方式 选项 方案 请求方法 POST 请求地址 /center/ 2.请求参数:表单 参数名 类型 是否必传 说明 username string 否 用户名 avat ...

  8. RHEL 5 密码破解和防止别人通过单用户模式修改密码

    一. 如何破解root账户的密码 1.在grub引导界面中按"e"进入grub的编辑模式. 2.编辑模式下选择第二项,即:"kernel/vmlinuz-2.6.18-8 ...

  9. Samba平台搭建和用户自行修改密码环境搭建笔记

    Samba 平台搭建和用户自行修改密码环境搭建笔记 系统:CentOS  release  6.5 (Final)x86_64 软件: samba                   #服务端 sam ...

最新文章

  1. xp系统vba服务器,VBA获取操作系统的版本号(支持windows xp,windows 2003 ,win7 ,win10)
  2. 手机突然电量消耗很快_手机突然出现这些故障!我来教你快速解决!
  3. 虚拟列表控件---加载大数据行
  4. 使用Java的RESTful Web服务
  5. CodeForces - 1144F搜索+简单图论
  6. 深度神经网络课程总结_了解深度神经网络如何工作(完整课程)
  7. MediaProxy的Web监控界面及多Relay情景配置
  8. 微信小程序(12)--倒计时
  9. metasploit-***测试工具
  10. 2020 时代的开发人员关键词:开源和远程办公
  11. 新一代CTR预测服务的GPU优化实践
  12. pdshell15 设计数据库_使用PowerDesigner 15对现有数据库进行生成图表结构
  13. 华为机试HJ4:字符串分隔
  14. [六省联考2017]相逢是问候(线段树+拓展欧拉定理)
  15. python安装笔记_Python学习笔记(一)python的安装和配置
  16. 计算机网络设备是固定资产哪类,财政六大类常用固定资产分类及代码
  17. JSON数据转EXCEL
  18. 极限中0除以常数_第七讲 极限存在准则和两个重要极限
  19. iphone个系列尺寸_10年巨变:华为手机是如何赶超iPhone的
  20. 高德地图JS添加海量点

热门文章

  1. “编程能力差的程序员,90%输在这事上!”谷歌AI专家:都是瞎努力!
  2. 美团十年,支撑最大规模外卖配送的一站式机器学习平台如何炼成?
  3. 解密Elasticsearch技术,腾讯开源的万亿级分布式搜索分析引擎
  4. 测试工程师的好日子来啦?Testin发布AI测试产品,提升易用性和自动化效率
  5. 今晚直播 | 谷歌资深工程师手把手教你使用TensorFlow最新API构建学习模型
  6. 马云:很多P2P公司披着互联网金融的外衣做非法金融服务
  7. 快速构建深度学习图像数据集,微软Bing和Google哪个更好用?
  8. AI一分钟 | 科大讯飞2017年度财报:营收54.45亿元,净利润4.35亿元;滴滴首谈无人驾驶战略:只做软件不造车
  9. 图灵奖得主Jeff Ullman直言:机器学习不是数据科学的全部!统计学也不是
  10. Pandas处理时序数据(初学者必会)!