【问题标题】:configuring django to send email via the microsoft live smtp server配置 django 以通过 microsoft live smtp 服务器发送电子邮件
【发布时间】:2014-02-26 14:21:42
【问题描述】:

我已在 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'])

【问题讨论】:

    标签: python django email smtp


    【解决方案1】:

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

    # 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)
    

    这段代码对我有用

    【讨论】:

    • 谢谢,您的回答对我帮助很大,但不是我的回答。我发现我使用了错误的 smtp 服务器,而正确的服务器是 smtp-mail.outlook.com,正如您在回答中所说,我没有对 EmailMessage 对象使用 send 方法,而且邮件甚至都无法发送...
    猜你喜欢
    • 1970-01-01
    • 2019-12-01
    • 2018-10-17
    • 1970-01-01
    • 1970-01-01
    • 2016-12-18
    • 2016-02-09
    • 2017-05-19
    • 2011-06-04
    相关资源
    最近更新 更多