首页 文章

Django内置password_reset视图不发送电子邮件

提问于
浏览
0

我正在使用django内置的URL和视图进行身份验证过程 .

我正在尝试使用django的内置网址和视图进行用户身份验证,但已经自定义了html文件,例如login.html注册/ password_reset_form.html

我已经在url.py中导入了网址

from django.contrib.auth import urls

在urlpatterns中

url(r'^account/', include('django.contrib.auth.urls')),

在我的views.py中

from django.contrib.auth.views import *

(没有其他视图函数来处理auth进程)

现在输入有效的电子邮件地址以便在 password_reset_form.html 中发送电子邮件,页面被重定向到 password_reset_done.html ,但我无法接收电子邮件

以下是我的settings.py中的电子邮件设置

if DEBUG:
    EMAIL_HOST = 'localhost'
    EMAIL_PORT = 25
    EMAIL_HOST_USER = ''
    EMAIL_HOST_PASSWORD = ''
    EMAIL_USE_TLS = False

当我尝试发送电子邮件的django快速示例时

from django.core.mail import send_mail

send_mail('Subject here', 'Here is the message.', 'from@example.com',
    ['mymail.com'], fail_silently=False)

它显示 error: [Errno 111] Connection refused 的错误消息

所以这意味着我必须在django内置的password_reset发送电子邮件之前做一些事情 . 任何人都可以帮助解释我应该做什么来使发送电子邮件功能工作?

非常感谢!

1 回答

  • 0

    根据您的设置,您的计算机上应安装本地smtp服务器(或您的服务器,具体取决于您运行示例的位置)

    尝试使用您的GMAIL(或YAHOO或您正在使用的任何提供商)以确保您的设置 .

    如果您是sendmail用户,sendmail是通常在unix机器上使用的邮件服务器,您可以使用此snippet来实现自定义邮件后端 . 自定义后端的声明是通过设置文件中的EMAIL_BACKEND设置参数完成的 .

相关问题