python - 当点击更改密码时是空白页但密码已更改django

标签 python django python-3.x django-2.1

我创建登录页面。我的问题是“忘记密码”。用户输入邮件,django 发送带有链接的消息。当点击它时必须更改密码。完成后单击“更改密码”,我们应该移动到下一页,但它是空白的。但密码已更改。

帐户/urls.py

from django.urls import path, reverse_lazy
from django.contrib.auth import views as auth_views
from . import views

app_name = 'account'

urlpatterns = [
    path('', auth_views.LoginView.as_view(template_name='account/login.html'), name='login'),
    path('logout/', auth_views.LogoutView.
         as_view(template_name='registration/logout.html'), name='logout'),
    path('logout_then_login/', auth_views.logout_then_login, name='logout_then_login'),
    path('dashboard/', views.dashboard, name='dashboard'),
    path('password_change/', auth_views.PasswordChangeView.
         as_view(success_url=reverse_lazy('account:password_change_done')), name='password_change'),
    path('password_change_done/', auth_views.PasswordChangeDoneView.
         as_view(template_name='registration/password_change_done.html'),
         name='password_change_done'),
    path('password_reset/', auth_views.PasswordResetView.
         as_view(template_name='registration/password_reset_form.html',
                 html_email_template_name='registration/password_reset_mail.html'),
         name='password_reset'),
    path('password_reset/done', auth_views.PasswordResetDoneView.
         as_view(template_name='registration/password_reset_done.html'),
         name='password_reset_done'),
    path('reset/<uidb64>/<token>/', auth_views.PasswordResetConfirmView.
         as_view(template_name='registration/password_reset_confirm.html'),
         name='password_reset_confirm'),
    path('reset/done', auth_views.PasswordResetCompleteView.
         as_view(template_name='registration/password_reset_complete.html'),
         name='password_reset_complete')
]

password_reset_complete.html

{% extends "base.html" %}

{% block title %}
    <p>Password was changed</p>
{% endblock %}

设置.py

LOGIN_REDIRECT_URL = reverse_lazy('account:dashboard')
LOGIN_URL = reverse_lazy('account:login')
SUCCESS_URL = reverse_lazy('account:password_change_done')

它是否正确:

url.py

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('account.urls')),
    path('', include('django.contrib.auth.urls')),
]

最佳答案

我假设base.html包含一个内容 block 。所以你只是错过了

{% block content %}{% endblock %}

password_reset_complete.html 的一部分。

关于python - 当点击更改密码时是空白页但密码已更改django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53778528/

相关文章:

Python Turtle 笔色

python - 无法在 shell 中验证 Django 用户

python - Pandas:一列具有重复组到多列

python - Anaconda 的 rdkit 安装问题

python - 如何使用 Aptana Studio 在 mac os x 和 windows 上安装 Python?

python - 将 wav 文件传递​​到 IPython.display 时出错

python-3.x - 如何使用过滤器从 pycallgraph 中删除整个调用树

python - 如何从 Django 中的 inlineadmin 获取当前模型实例

django - 我是否在 django 中以错误的方式重写了模型上的保存方法?

python - 如何在python中对齐文本输出?