配置django通过microsoft live smtp服务器发送电子邮件

时间:2014-02-26 14:21:42

标签: python django email smtp

我已在Microsoft Live SMTP服务器上注册并为我的django应用程序创建了一封电子邮件,以便从我的域发送邮件。但问题是这些配置不起作用,我无法从我在本地主机上运行的django应用程序发送电子邮件到另一个电子邮件地址。怎么了?这是我的代码:

#Settings.py
# Email Server config
DEFAULT_FROM_EMAIL = 'Hamid FzM <hamidfzm@example.com>'
EMAIL_HOST = 'smtp.live.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'hamidfzm@example.com'
EMAIL_HOST_PASSWORD = 'something'

出于测试目的,每次访问127.0.0.1/test/时,都会通过调用此函数将电子邮件发送到我的帐户

#views
def test(request):
    from django.core.mail import EmailMessage
    EmailMessage('Test', 'This is body', to=['other@example.com'])

1 个答案:

答案 0 :(得分:2)

我认为您需要正确加载这些设置并在邮件对象上运行发送...

# import settings
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")

# send an email
from django.core.mail import EmailMessage
message = EmailMessage(subject="Peter Maffay", body="test", from_email="it@maffay.com",  to=["peter.maffay@gmail.com"])
message.send(fail_silently=False)

此代码片段适合我

相关问题