国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 安塞县| 鹤峰县| 揭东县| 越西县| 甘谷县| 民丰县| 江口县| 同江市| 湖南省| 浦城县| 安乡县| 麻城市| 青川县| 巴彦淖尔市| 彭泽县| 七台河市| 汾阳市| 榆林市| 屏南县| 乌鲁木齐县| 平泉县| 韶山市| 八宿县| 军事| 永泰县| 绿春县| 昌都县| 会同县| 广水市| 泰宁县| 墨江| 姚安县| 武义县| 沭阳县| 丰原市| 淅川县| 上林县| 七台河市| 桦南县| 黄大仙区| 辽源市|