扩展未出现在Python中的基本模板

扩展未出现在Python中的基本模板,python,flask,jinja2,Python,Flask,Jinja2,我有一个base.html页面,它有一个页眉和一个页脚块。 当我在home.html页面中使用{%extends“base.html”%}时,我从base.html页面中什么也得不到 如果使用{%include“base.html”%},则home.html页面中的所有内容都位于底部,页眉和页脚位于顶部。有人知道我怎么解决这个问题吗 我喜欢顶部的标题块,中间的HOM.html内容,以及在主页底部呈现的页脚块。 如果有任何帮助,我将不胜感激。谢谢 这是我的密码myapp.py from flask

我有一个base.html页面,它有一个页眉和一个页脚块。 当我在home.html页面中使用
{%extends“base.html”%}
时,我从base.html页面中什么也得不到

如果使用
{%include“base.html”%}
,则home.html页面中的所有内容都位于底部,页眉和页脚位于顶部。有人知道我怎么解决这个问题吗

我喜欢顶部的标题块,中间的HOM.html内容,以及在主页底部呈现的页脚块。 如果有任何帮助,我将不胜感激。谢谢

这是我的密码<代码>myapp.py

from flask import Flask, render_template, url_for
app = Flask(__name__)

@app.route("/")
@app.route("/home")
def home():


    return render_template("home.html", title="Home",
                          menu = menu)


@app.route("/base")
def base():

    return render_template("base.html", title="Base")

if __name__ == "__main__":
    app.run(debug=True)
base.html

<!DOCTYPE html>
<html>
    <head>
        <title>{{title}} - Restaurant</title>
</head>
<body>

    {% block header %}

 <ul>
     <li><a href="{{url_for('home')}}">Home</a></li>

    </ul>

    {% endblock header %}



    {% block footer %}

    <h1>This is a footer</h1>

    {% endblock footer %}

</body>
{% extends "base.html" %}
{% block header %}

<h1>Home Page</h1>

{% endblock header %}



{% block footer %}

<h1>New stuff in home page</h1>

{% endblock footer %}
试试这个

base.html

{%block title%}{%endblock%}-餐厅
{%块头%}
{%endblock头%} {%block content%}{%endblock%} 这是一个页脚
home.html
{%extends“base.html”%}
{%block content%}
{%块头%}
主页
{%endblock头%}
{%block footer%}
主页中的新内容
{%endblock footer%}
{%endblock%}

在子模板中定义块会自动完全覆盖父模板中的版本。如果还想输出父版本,则需要调用
super()
-请参阅

因此,home.html应该是:

{%extends“base.html”%}
{%块头%}
{{super()}}
主页
{%endblock头%}
{%block footer%}
{{super()}}
主页中的新内容
{%endblock footer%}

您已覆盖home.html中的页眉和页脚。你期待什么?嗨,丹尼尔。在主页中,我期待着链接,主页,然后是页脚,最后是主页中的新内容。
<!DOCTYPE html>
<html>
<head>
        <title>{% block title %}{% endblock %} - Restaurant</title>
</head>
<body>

    {% block header %}

    <ul>
        <li><a href="">Home</a></li>
    </ul>

    {% endblock header %}

    {% block content %}{% endblock %}

    <h1>This is a footer</h1>

</body>
{% extends "base.html" %}
{% block content %}

{% block header %}

<h1>Home Page</h1>

{% endblock header %}


{% block footer %}

<h1>New stuff in home page</h1>

{% endblock footer %}

{% endblock %}