首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django静态文件不适用于HTML-EMail模板

django静态文件不适用于HTML-EMail模板
EN

Stack Overflow用户
提问于 2017-04-05 07:41:00
回答 1查看 2.4K关注 0票数 5

我正在Win7主机上的本地Vagrant机器上运行Django。我在一个.env文件中设置了Django中的环境变量。在我的应用程序中,所有的静态文件都得到了正确的处理,所有的东西都能正常工作。

Problem:我无法在html电子邮件模板中提供静态文件(图像)。直到现在,我作为硬编码文件的URL服务他们,我想改变这一点。

我将把BASE_URL BASE_URL=http://127.0.0.1:8001作为模板的上下文传递给模板,并像往常一样加载静态的内容,这已经被证明是有效的:

代码语言:javascript
复制
{% load static %} 

并在HTML标记中调用它:

代码语言:javascript
复制
<img src="{{BASE_URL}}{% static 'img/my_image.png' %}">

在接收到的电子邮件中,图像的URL是image.png,它看起来是对的,但触发了404。

我遗漏了什么??

(请不要问我图片是否在对应的文件夹中,它是;)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-05 07:54:16

正如@dentemm已经说过的那样:您的电子邮件服务提供商试图从image.png获取图像,但是他无法从本地计算机上看到您服务器的地址。因此找不到图像。解决这一问题的一种方法是呈现模板,并将模板的屏幕截图发送到电子邮件正文中(查看它是否正确地呈现),例如here

另一种方法是将img文件上传到某个可公开访问的服务器。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43224850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档