国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > 幫助中心 > 正文

Django通用類視圖實(shí)現(xiàn)忘記密碼重置密碼功能示例

2024-07-09 22:42:42
字體:
供稿:網(wǎng)友

前言

在Django中有大量的通用類視圖,例如ListView,DetailView,CreateView,UpdateView等等,將所有重復(fù)的增刪改查代碼抽象成一個(gè)通用類,只需要配置極少量的代碼即可實(shí)現(xiàn)功能。

使用通用類視圖完成找回密碼功能

首先引入

from django.contrib.auth.views import PasswordResetView, PasswordResetConfirmView, / PasswordResetDoneView, PasswordChangeView, PasswordChangeDoneView, / PasswordResetCompleteView

配置如下:

class MyPasswordResetView(PasswordResetView): """重置密碼視圖""" template_name = 'users/registration/forget_pwd.html' form_class = ForgetForm success_url = reverse_lazy("users:password_reset_done") email_template_name = 'users/registration/password_reset_email.html'class MyPasswordResetConfirmView(PasswordResetConfirmView): """重置密碼頁面,輸入兩次密碼""" template_name = 'users/registration/password_change_form.html' success_url = reverse_lazy('users:password_reset_complete')class MyPasswordResetDoneView(PasswordResetDoneView): """發(fā)送確認(rèn)重置郵件""" template_name = 'users/registration/password_reset_done.html'class MyPasswordResetCompleteView(PasswordResetCompleteView): """完成重置密碼""" template_name = 'users/registration/password_change_done.html'

其中忘記密碼,填寫郵箱的模板forget_pwd.html模板如下:

   <form method="post" class="form-validate" action="{% url 'users:password_reset' %}">   <div class="form-group">    <input  type="text" name="email" required data-msg="請輸入您的郵箱" class="input-material">    <label for="login-username" class="label-material">郵箱</label>    {% if form.errors %}    <div >郵箱輸入錯(cuò)誤</div>    {% endif %}   </div>    {% csrf_token %}    <button type="submit"  href="#" rel="external nofollow" class="btn btn-primary">發(fā)送確認(rèn)郵件</button>   <!-- This should be submit button but I replaced it with <a> for demo purposes-->   </form>

其中輸入新密碼模板password_change_form.html頁面如下:

<form  method="post"> {% csrf_token %} {{ form|crispy }} <div class="form-group"> <button type="submit" class="btn btn-primary button-submit">確認(rèn)更改</button> </div></form>

其中重置密碼郵件發(fā)送成功的模板password_reset_done.html如下:

 <div class="col-lg-6 bg-white">  <div class="form d-flex align-items-center">  <div class="content">   <h1>重置密碼郵件發(fā)送成功!</h1>  </div>  </div> </div>

其中密碼重置成功password_change_done.html如下:

 <div class="container"> <div class="row">  <div class="col-md-6 offset-md-3">  <h1>重置密碼成功!</h1>  <a href="{% url 'index' %}" rel="external nofollow" >回到首頁</a>  </div> </div> </div>
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 涪陵区| 宁安市| 囊谦县| 莱芜市| 卢龙县| 和硕县| 拉孜县| 浦县| 思茅市| 武城县| 靖远县| 长沙县| 平山县| 广丰县| 宜君县| 商洛市| 宿迁市| 日照市| 宁都县| 珠海市| 平湖市| 普兰店市| 游戏| 清涧县| 盖州市| 平乐县| 怀安县| 阳信县| 桐梓县| 灵石县| 剑川县| 革吉县| 乌审旗| 瑞昌市| 万载县| 霸州市| 修武县| 泾阳县| 若羌县| 若羌县| 广河县|