2014-10-10 175 views
0

我試圖在發送HTML電子郵件時在Djano中內聯顯示圖像。我有HTML電子郵件工作。但圖像顯示爲附件,我按照https://www.vlent.nl/weblog/2014/01/15/sending-emails-with-embedded-images-in-django/中的步驟顯示圖像作爲附件。我不想要的。我想要圖像內聯顯示。在HTML電子郵件中顯示嵌入式圖像Django

在我的Django的模板,我有:

<img src="/static/url/location/image.png" /> 

的urls.py有正確的設置。當我去:

http://localhost:8000/static/url/location/image.png 

我可以清楚地看到圖像。

當電子郵件發送時,圖像不顯示,我不知道爲什麼。任何幫助表示感謝。

我使用Django 1.6.2 btw。

編輯:實施了以下關於使用絕對URL的建議。 我確實嘗試了絕對URL。奇怪的部分是:當我使用一些其他網站的絕對網址,例如:

<img src="google.com/images/srpr/logo11w.png"; /> 

圖像以內聯方式顯示。當我在本地服務器上使用圖像的絕對url位置時,圖像不顯示:-(。不知道我還缺少什麼。

+0

您需要將絕對URL與HTML電子郵件中的圖像一起使用。 – Brandon 2014-10-10 17:33:41

回答

1

您可能需要服務器上的圖像的絕對url。在一封電子郵件中相對圖像,據我所知

您可以爲絕對URL到當前主機的做到這一點。

<img src="{{ request.get_host }}/static/url/location/image.png" /> 

你也許可以從使用{% static %}標籤以及受益,(如果你有正確配置的靜態文件)像這樣:

<img src="{{ request.get_host }}{% static 'url/location/image.png' %}" /> 
+0

嗨!感謝您的幫助。我確實嘗試了絕對URL。奇怪的部分是:當我使用其他網站的絕對URL時,例如:,圖像以內聯方式顯示。當我在本地服務器上使用圖像的絕對URL位置時,圖像不顯示:-(。不知道我還缺少什麼。 – doubleo 2014-10-10 17:49:22

+0

您的電子郵件客戶端無法連接到本地服務器。你可以確認圖像標籤中的URL是否正確? – jproffitt 2014-10-10 17:52:11

+0

嗨,是的,我在模板中打印了實際的url值,以確保它的URL正確。我認爲你對電子郵件客戶端沒有任何要求訪問url。看起來我必須將圖像上傳到公共服務器上,以便在電子郵件中可見。 – doubleo 2014-10-10 17:56:55

相關問題