迹忆客 专注技术分享

当前位置:主页 > 学无止境 >

Django 更改密码

作者:迹忆客 最近更新:2023/02/27 浏览次数:

我们将学习如何创建一个网页供用户在登录 Django 网页后更改密码。

例如,我们在 Django 中有一个项目,我们将在这个项目中工作,我们有用户的应用程序。在这个应用程序中,我们找到了 views.py 文件,我们需要导入两个必要的视图。

其中之一称为 PasswordChangeView,它允许我们更改密码,PasswordResetDoneView 将确认密码已被重置。

现在我们需要定义一个名为 MyPasswordChangeView 的类,它将继承自 PasswordChangeView;在这个类中,我们声明了 template_name 变量并将模板 URL 存储在用户将更改密码的位置。

success_url 变量中,我们需要放置 reverse_lazy() 变量。在代码下面,我们需要创建另一个名为 MyPasswordResetDoneView 的类,并从 PasswordResetDoneView 继承它。

我们只在这个类中声明了 template_name 变量,并将模板的路径存储到这个 template_name 变量中;然后,我们需要保存它并在 urls.py 文件中注册这些视图。

views.py 文件:

from django.shortcuts import render
from django.urls import reverse_lazy
from django.contrib.auth.views import PasswordChangeView,PasswordResetDoneView

class MyPasswordChangeView(PasswordChangeView):
    template_name='users/password-change.html'
    success_url=reverse_lazy('users:password-change-done-view')

class MyPasswordResetDoneView(PasswordResetDoneView):
    template_name='users/password-reset-done.html'

我们将在用户的应用程序中创建一个 urls.py 文件,然后将我们的视图导入我们创建的文件中。

然后我们需要创建一个名为 app_name 的变量,它等于 users,这是我们的应用程序名称。在该行下方,我们将创建一个 urlpatterns 列表,我们将在其中将视图与 URL 集成。

创建一个变量和 urlpatterns

我们将创建模板,但在移动任何地方之前,我们需要在 urls.py 文件中包含主项目的 urlpatterns 的用户路径。让我们在 movies 下面为用户创建一个新路径,namespace 应该与应用程序匹配;写完代码,保存。

urls.py 文件的 urlpatterns

现在我们可以回到用户的应用程序,在这里,让我们创建一个 templates 文件夹;在 templates 中,我们将创建另一个名为 users 的文件夹。在 users 文件夹中,我们需要创建两个我们在 views.py 文件中定义的 HTML 文件。

我们将开始处理 password-change.html 文件,首先,从 base.html 继承,然后,我们设置 block titleblock content 这将由表单。让我们把 form action 留空,方法等于 POST,这意味着我们正在处理 POST 请求。

我们需要将 csrf_token 放入表单中,这将允许发送请求。我们将创建一个按钮并将此类型保持为 submit,通过添加一个类使其成为绿色按钮。

块标题和块内容

我们将处理 password-reset-done.html,在这里,我们再次需要从 base.html 文件继承;在此之后,方法将相同,但语法会有所不同。

然后我们将编写一个 href 属性并提供主视图的路径名称,因此用户将通过按下此按钮来进行操作。

href 属性

最后一件事是转到 home.html 创建一个按钮来访问用户将更改密码的页面。

更改密码按钮

服务器正在运行,我们通过首页去修改密码,可以看到登录后用户可以修改密码了。

修改密码输出

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 中的第一类函数

发布时间:2023/04/25 浏览次数:113 分类:Python

第一类函数是被语言视为对象或变量的函数。 我们可以将它们分配给变量或将它们作为对象传递给其他函数。Python 支持第一类函数的功能。

Python 函数参数类型

发布时间:2023/04/25 浏览次数:140 分类:Python

在这篇 Python 文章中,我们将学习 Python 中使用的函数参数类型。 我们还将学习如何编写不带参数的 Python 函数。

Python 生成器中的 send 函数

发布时间:2023/04/25 浏览次数:111 分类:Python

本教程将介绍如何在 Python 中使用生成器的 send() 函数。我们可以创建一个像迭代器一样运行的函数,并且可以通过 Python 生成器函数在 for 循环中使用。

Python Functools 偏函数

发布时间:2023/04/25 浏览次数:80 分类:Python

本文介绍了我们如何使用分部函数,该函数随 functools 库一起提供,并附有示例。 这显示了调用时如何传递属性和部分函数。

Python main() 函数中的参数

发布时间:2023/04/25 浏览次数:157 分类:Python

在本教程结束时,我们应该了解Python 中在 main() 中使用参数是否是一种好的做法。

Python 中的内置 identity 函数

发布时间:2023/04/25 浏览次数:88 分类:Python

identity 函数只是一个返回其参数的函数。 当我们定义一个恒等函数并赋值时,它会返回该值。在本教程结束时,我们将了解 Python 是否具有内置的 identity 函数。

在 Python 中拟合阶跃函数

发布时间:2023/04/25 浏览次数:177 分类:Python

阶跃函数是带有看起来像一系列步骤的图形的方法。 它们由一系列中间有间隔的水平线段组成,也可以称为阶梯函数。本文给出了阶跃函数的简单演示。

在 Python 中创建双向链表

发布时间:2023/04/25 浏览次数:54 分类:Python

双向链表是指由称为节点的顺序链接的记录集组成的链接数据结构。 每个节点包含一个前一个指针、一个下一个指针和一个数据字段。

将 Python 类对象序列化为 JSON

发布时间:2023/04/25 浏览次数:152 分类:Python

本教程介绍序列化过程。 它还说明了我们如何使用 toJSON() 方法使 JSON 类可序列化,并包装 JSON 以转储到其类中。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便