【问题标题】:Flask: Create content of block if it is not extended by another templateFlask:如果没有被另一个模板扩展,则创建块的内容
【发布时间】:2019-07-14 15:42:06
【问题描述】:

我有一个所有其他模板都扩展的基本模板:

base.html:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>{% block title %}{% endblock %}</title>
</head>
<body>
{% block body %}{% endblock %}
</body>
</html>

其他模板将扩展此模板,但不完全:

site.html:

{% extends base.html %}

{% block body %}
    ...
{% endblock %}

title 块未扩展。在这种情况下,我可以在base.html 内给它一个默认值吗?

【问题讨论】:

    标签: templates flask jinja2


    【解决方案1】:

    看来只需将要替换的内容放在base.html 文件的块中就足够了。所以“扩展”并没有真正扩展(在附加的意义上)一个块的现有内容,而是替换它。 base.html:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <title>{% block title %}Default Title{% endblock %}</title>
    </head>
    <body>
    {% block body %}{% endblock %}
    </body>
    </html>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-09
      • 1970-01-01
      相关资源
      最近更新 更多