使用Django

时间:2018-03-14 09:46:00

标签: python django email django-settings

我尝试使用django.core.mail发送电子邮件,但收到错误:

Request Method: POST

Request URL:    http://localhost:8000/accounts/signup/

Django Version: 1.11.10

Exception Type: gaierror

Exception Value:    

[Errno -2] Name or service not known

Exception Location: /usr/lib/python2.7/socket.py in create_connection,
line 557

Python
Executable: /home/lucas/Documentos/projetos/advogados/venv/bin/python

Python Version: 2.7.12

之后我尝试使用像这样的python脚本发送电子邮件并且工作正常:

import smtplib    
server = smtplib.SMTP('smtp.gmail.com', 587) 
server.starttls()  
server.login("my@email.com", "mypassword")    
msg = "YOUR MESSAGE!"  
server.sendmail("my@email.com", "to@email.com", msg) 
server.quit()

所以我创建了自己的电子邮件发件人以与Django一起使用:

import smtplib 
from django.conf import settings


def send_custom_mail(msg, to, subject):
    message = 'Subject: {}\n\n{}'.format(subject, msg)
    server = smtplib.SMTP(settings.EMAIL_HOST, settings.EMAIL_PORT)
    server.starttls()
    server.login(settings.EMAIL_HOST_USER, settings.EMAIL_HOST_PASSWORD)
    server.sendmail(settings.EMAIL_HOST_USER, to, message)
    server.quit()

它仍然无效,我收到同样的错误。

所以我删除了设置变量并使用了真实值,并且它工作!!!

我意识到问题与设置变量有关,我记录了它们,它们是类型,字符串表示主机,传递和用户以及int表示端口。好的!

我不知道如何检查或修复它,其他变量如ALLOWED_HOSTS和SECRET_KEY正常工作

我正在使用decouple lib从设置中删除敏感数据

0 个答案:

没有答案