【问题标题】:Django - Built in reset password links not workingDjango - 内置重置密码链接不起作用
【发布时间】:2021-03-13 17:34:33
【问题描述】:

我正在关注这个tutorial 来实现内置的 Django 重置密码视图。我正在使用自定义用户模型,并且我已经阅读过,当用户模型从 AbstractUser 继承时,它应该可以正常使用密码重置视图。但是,它们都不起作用。我正在尝试访问重置表单,但没有显示任何内容。任何帮助将不胜感激

型号

class UserProfile(AbstractUser):
    contact_phone = models.CharField(max_length=100, unique=True)
    email = models.EmailField(unique=True)

网址

path('accounts/', include('django.contrib.auth.urls')),

模板

registration/password_reset_complete.html
registration/password_reset_confirm.html
registration/password_reset_done.html
registration/password_reset_email.html
registration/password_reset_form.html
registration/password_reset_subject.txt

用于开发的电子邮件后端

EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'

【问题讨论】:

    标签: django django-models django-views django-forms django-templates


    【解决方案1】:

    您正在将控制台后端用于电子邮件后端。检查您的终端,如果您在 Mac、Linux、Windows 上检查您的控制台,您可以从控制台复制链接并粘贴到浏览器中。

    【讨论】:

    • 也许我没有解释清楚。 “password_reset_form.html”中的表单根本不在模板上呈现。所以我还没有接近这个过程的电子邮件阶段。
    • 你在settings.py中设置了模板目录吗?
    • 是的,我的模板适用于我的应用程序中的所有其他表单。自从我创建应用程序后,我就没有碰过我的模板设置
    【解决方案2】:

    我没有在模板中加载所有相关标签,因此表单没有呈现。就我而言,我在顶部包含以下内容:

    {% extends 'base.html' %}
    {% load crispy_forms_filters %}
    {% load crispy_forms_tags %}
    
    {% block nav_title %}Title{% endblock %}
    {% block body_content %}
    

    我以为我以前有它们,但也许我没有。

    【讨论】:

      猜你喜欢
      • 2016-11-04
      • 2011-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-01
      • 1970-01-01
      相关资源
      最近更新 更多