jinja2阻止不在模板中渲染

时间:2016-10-01 17:47:18

标签: python flask jinja2

好的,这就像一个新手问题,但我正在尝试使用Flask与Jinja进行模板继承。

我遇到的问题是我的块不会在我的base.html模板中呈现。

这是我的base.html

代码:

<!doctype html>
<html>
    <head>
        <title>{% block title %}{% endblock %}</title>
    </head>
    <body>
        {% block body %}{% endblock %}
        <h2>From Layout</h2>   
    </body>
</html>

这是我的index.html,它扩展了base.html

{% extends "base.html" %}

{% block title %} Home {% endblock %}

{% block content %}
<h1> Welcome home {name}</h1>
{% endblock %}

这是我的主要Flask文件,我在其中运行我的应用程序:

from flask import Flask
from flask import render_template

app = Flask(__name__)

@app.route('/')
@app.route('/<name>')
def index(name="Mark"):
    return render_template('index.html', name=name)

我错过了什么吗?似乎无法弄清楚我做错了什么。

1 个答案:

答案 0 :(得分:0)

您的索引文件包含&#34;阻止内容&#34;但是您的基本文件有&#34;阻止正文&#34;。选择其中一个,但要保持一致。

修复后,您还需要修正显示名称的方式:变量语法为function executePromiseLoop(arr) { return arr.reduce(function(promise, email) { return promise.catch(logError).then(function() { return myCustomPromise(email); }); }, Promise.resolve()); } ,而不是{{ name }}