2012-08-11 18 views
2

我創造了我的「settings.py」文件包含以下條目Django的:</p> <pre><code>email = EmailMessage('Hello','Have you received this mail?',to=['[email protected]']) </code></pre> <p>我<code>1</code>爲:設置電子郵件

# Email setup 
EMAIL_USE_TLS = True 
EMAIL_HOST = 'smtp.gmail.com' 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_HOST_PASSWORD = 'thepassword' 
EMAIL_PORT = 587 

然後我在終端發出以下命令輸出中。

當我在'someone @ gmail.com'檢查郵箱時,郵箱中沒有郵件。我想念什麼?

+0

你在使用什麼託管服務提供商?爲此,還需要進行一些配置。 – AndyL 2012-08-11 18:54:57

+0

我只是在本地機器上,現在不使用任何主機。 – 2012-08-11 19:00:09

回答

2

您應該設置from_email參數(作爲kwarg或第3參數)與EmailMessage調用。或settings.py中定義:

DEFAULT_FROM_EMAIL = '[email protected]' 

這被視爲默認,如果沒有from_email提供給EmailMessage

在半相關說明中,在settings.py中定義SERVER_EMAIL也許是個好主意。這個與Django的mail_adminsmail_managers一起使用。

1

你所有的設置都是正確和完整的,你最後錯過了一件事。你創建了一個郵件對象,現在email已經準備好發送郵件對象,但你需要實際發送它email.send()。有關更多信息和示例,請查看Django documentation。此外,您可以使用send_mail自動創建電子郵件對象併發送它。

from django.core.mail import send_mail 

mail_title = 'Hello!' 
message = 'Have you received this mail?' 
email = '[email protected]' 
recipients = '[email protected]' 

send_mail(mail_title, message, email, [recipients]) 
+0

我發送了郵件,然後只有'1'作爲輸出 – 2012-08-12 15:21:53

+0

您是否嘗試登錄到您在'EMAIL_HOST_USER'中設置的'someone @ someorg.com'並檢查已發郵件?你能在那裏看到嗎?或者可能是收件人不可用的錯誤郵件? – Scillon 2012-08-13 13:04:04

相關問題