Django auth_views.PasswordResetView 不发送自定义电子邮件模板

问题描述

我正在尝试使用重置令牌发送自定义电子邮件模板。但无论我做什么,它都会不断发送原始 HTML。我以前有过使用 Django 和 Django rest 框架做完全相同的事情而没有任何问题的经验。 我是这样做的,

urls.py

urlpatterns = [
    path('admin/',admin.site.urls),path('',include('store.urls')),include('django.contrib.auth.urls')),]
urlpatterns += static(settings.STATIC_URL,document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)

store/urls.py

...
path('password_reset',auth_views.PasswordResetView.as_view(
            template_name='registration/password_reset_form.html',html_email_template_name='registration/html_password_reset_email.html',email_template_name = 'registration/password_reset_email.html',),name='password_reset'
    ),

文件夹结构

...
templates
|-- registration
     |-- html_password_reset_email.html 
     |-- password_reset_email.html
     |-- ...  
...

注意:

在它发送认的 Django 电子邮件模板之后,我尝试删除 password_reset_email.html 模板。

希望得到任何指导以解决问题,提前致谢。

解决方法

调试的最后几天(3)我发现了我的愚蠢错误:(,

我在我的主 path('',include('django.contrib.auth.urls')) 文件中包含了所有身份验证网址 urls.py,并在 auth.urls 中重新定义了 store/urls.py,因此覆盖不会正确发生。

所以,而不是,

path('password_reset',# <<< here
      auth_views.PasswordResetView.as_view(
       ...
      ),name='password_reset'
    ),

应该是,

 path('password_reset/',# <<< here
      auth_views.PasswordResetView.as_view(
            ),

不会删除问题 (^.^') #for_sake_of_dumb_fellows_like_me