我想在Django模板文件“base.html”中使用img src标记打印图像:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en">
<head>
<title>Foto</title>
</head>
<body>
<h1>My helpful timestamp site</h1>
<img src="google.png" / >
<hr>
<p>Made by ... </p>
</body>
</html>
在views.py中我定义:
def hello(request):
return render_to_response('base.html')
但是图片没有显示在浏览器中。如果我将其作为一个简单的html文件打开,它会显示在浏览器中。
答案 0 :(得分:13)
最新版本的 django
<img src="{% static 'path/to/image.ext' %}"/>
答案 1 :(得分:10)
这是因为Django不知道这张图片的路径
创建一个名为static/
的文件夹,然后在项目根目录中创建一个名为images/
的文件夹(settings.py文件所在的文件夹)。
my_project/
my_project/
settings.py
static/
images/
google.png
然后将其更改为:
<img src="{{STATIC_URL}}images/google.png" / >
更多here。
答案 2 :(得分:2)
您必须在 Django 模板的开头添加加载静态标记,祝您使用以下代码。
{% load static %}
<img src="{% static 'path/to/image.ext' %}"/>
答案 3 :(得分:0)
在最新版本的Django中我们推迟了所有复杂性:
(不要忘记你需要在静态文件夹中保留所有东西)
所以在你的模板中:
{% load static %}
<img src="{% static 'path_to_save/google.png' %}"/>