使用模板继承时不加载图像

时间:2013-09-23 21:00:53

标签: html google-app-engine jinja2 template-engine

父模板中的图像不会加载到子模板中,而是显示“alt”。 这是结构的方式。

“base.html文件”

<DOCTYPE! html>
<html>
    <head>
    </head>
    <body>
        <div class = "x">
            <image src="x.jpg" alt="x">
        </div>
        <div class = "y">
            <a src="...">y</a>
        </div>
        <div id = "content">
            {% block content %}
            {% endblock %}
        </div>
    </body>
</html>

“child.html”

{% extends "base.html" %}
    {% block content %}
        ---replaced content
    {% endblock %}

内容,y通常在儿童中显示,但x(图像)显示替代文字,无法加载图像。这只发生在图像的src不是url时,如果它显示正常。

我正在使用jinja2模板引擎。

1 个答案:

答案 0 :(得分:0)

当我将图像添加到包含除了任何目录之外的所有静态文件的目录并将该目录路径添加到src时,问题就解决了。 发生这种情况是因为我像这样配置了app.yaml处理程序

handlers:
- url: /static
  static_dir: static

所以只要一个url以'/ static'开头,就会从这个目录中获取它,并将其视为静态文件,否​​则不会。

这与这个问题非常相似 Jinja not rendering css/images in sub-directories 与jinja2或其继承无关。