2012-05-04 367 views
1

我設置了this snippet的sendmail發送電子郵件 - Django的

我打開程序並運行(與實際電子郵件帳戶)的sendmail電子郵件後端:

from django.core.mail import send_mail 

send_mail('Subject here', 'Here is the message.', '[email protected]', 
    ['[email protected]'], fail_silently=False) 

之後,控制檯只是打印出:

沒有錯誤消息或任何東西......但郵件永遠不會在另一端到達...

還有什麼,我需要配置?

感謝,


從我的託管服務提供商請求的郵件服務器的錯誤日誌,看到這一點:

send_to_gateway router failed to expand "${perl{mailtrapheaders2}}": 
Undefined subroutine &main::mailtrapheaders2 called.\n` 

他們仍在試圖弄清楚:S

+0

哪些郵件服務器做你的用戶? – okm

+0

請參閱編輯 – AlexBrand

回答

2

在代碼片段:

def send_messages(self, email_messages): 
    """ 
    Sends one or more EmailMessage objects and returns the number of email 
    messages sent. 
    """ 

它返回一個變量num_sent時遞增爲每個已實際發送的郵件。這是您看到在控制檯中顯示的1

+0

好了!但問題是電子郵件沒有被髮送或沒有在另一端收到... – AlexBrand

+0

+1在檢查相關代碼之前作出答案。 – okm

+2

@alexBrand從你發佈的錯誤日誌看來,它似乎是一個exim的託管問題。有關如何解決此問題的信息,請查看http://www.webhostingtalk.com/ archive/index.php/t-270504.html' – Silviu

1

也許問題出在你的郵件服務器。 sendmail連接到郵件服務器並告訴他「收到這封郵件併發送給地址X」。如果郵件服務器正在工作,它需要並且說OK,然後嘗試將其發送到地址 - 如果在發送郵件服務器錯誤期間發生中斷並且不發送給Django。

檢查你的郵件服務器的日誌,我相信你會找到答案「爲什麼是主要的未交付」在那裏。

+0

我檢查了日誌並添加了錯誤的問題..檢查編輯請:) – AlexBrand

+0

不知道,它似乎更像是一個服務器故障的問題,在那裏問這個錯誤) –