以电子邮件友好的方式使用超链接和图像

问题描述

嘿全能的 Stackoverflow,

我是 Django 的新手,我需要编写一个 HTML 电子邮件模板,其中包括社交媒体图标,同时也是超链接。在预览中一切正常,但是当通过电子邮件发送时,只会出现“broken-Image”图标。 图像位于 Django 模块的静态文件中,也位于主应用程序的 static.dist 目录中。几周前,它起作用了,但经过一些暂停和昨天的新测试后,图像坏了。

  {% static 'ner_mail/YouTube.png' as yt_icon %}
             {% with 'target="blank" href="https://www.youtube.com/URL"'|safe as a_attr %}
               {% blocktrans  %}
                    <a {{ a_attr }} > <img src="{{ yt_icon }}" alt="" style="alignment: left;vertical-align:middle; width: 30px; padding-right: 5px" ></a>
                    <a {{ a_attr }}>    Social Media   {% endblocktrans %}
                {% endwith %}</li>

有人可以帮助我吗?预先感谢您的任何帮助! 最好的问候,

解决方法

static 模板标签提供了一个 相对 网址,因此当您在电子邮件中发送该网址时,用户的浏览器会假定它与用户所在的当前网站相关({ {1}}(如果假设用户在那里打开了他们的电子邮件)。因此你想呈现一个绝对网址。为此,您可以使用 request.scheme [Django docs]request.get_host [Django docs]

gmail.com