我正在Win7主机上的本地Vagrant机器上运行Django。我在一个.env文件中设置了Django中的环境变量。在我的应用程序中,所有的静态文件都得到了正确的处理,所有的东西都能正常工作。
Problem:我无法在html电子邮件模板中提供静态文件(图像)。直到现在,我作为硬编码文件的URL服务他们,我想改变这一点。
我将把BASE_URL BASE_URL=http://127.0.0.1:8001作为模板的上下文传递给模板,并像往常一样加载静态的内容,这已经被证明是有效的:
{% load static %} 并在HTML标记中调用它:
<img src="{{BASE_URL}}{% static 'img/my_image.png' %}">在接收到的电子邮件中,图像的URL是image.png,它看起来是对的,但触发了404。
我遗漏了什么??
(请不要问我图片是否在对应的文件夹中,它是;)
发布于 2017-04-05 07:54:16
正如@dentemm已经说过的那样:您的电子邮件服务提供商试图从image.png获取图像,但是他无法从本地计算机上看到您服务器的地址。因此找不到图像。解决这一问题的一种方法是呈现模板,并将模板的屏幕截图发送到电子邮件正文中(查看它是否正确地呈现),例如here。
另一种方法是将img文件上传到某个可公开访问的服务器。
https://stackoverflow.com/questions/43224850
复制相似问题