在服务器上显示具有绝对路径的图像

时间:2014-10-19 16:33:43

标签: django

假设我在C:/myimage.jpg的服务器计算机(Windows上的Django)上有一个映像。我想在客户端计算机上显示此图像。图像路径作为上下文变量image_path传递给模板。重要的是路径是绝对的而不是相对的。这是我对模板的尝试:

<img src="{{ image_path }}" />

但是,客户端根本看不到图像。我的第一个猜测是,当它读取image_path时,它实际上读取C:/myimage.jpg,因此在客户端计算机而不是服务器上查找。如何让它在服务器上查找图像呢?

2 个答案:

答案 0 :(得分:0)

在应用程序中使用静态内容的绝对路径不是一个正确的想法。您应该使用以下方法使用图像,

settings.py

中添加此内容
STATIC_URL = '/static/'

然后使用

访问图像
{% load staticfiles %}
<img src="{% static "my_app/myexample.jpg" %}" alt="My image"/>

请阅读guidelines了解详情

答案 1 :(得分:0)

即使您可以告诉浏览器查看服务器上的特定文件位置,这怎么可能是一个好主意?如果用户输入包含数据库凭据的settings.py文件的路径,该怎么办?

显然,您只能通过URL查找文件,这些URL实际上必须由服务器映射到实际文件。因此,您需要配置Web服务器,使其将URL映射到文件所在的位置,然后您可以在模板中使用该URL。