Flask - 将项目返回base.html

时间:2014-10-08 10:53:20

标签: python flask jinja2

我想知道是否可以创建一个默认路由,将对象或项目返回到base.html(所有其他页面都继承自)

类似这样的事情

@app.route(all)
def base():
    test = 'Avaible to all'
    return render_template('base.html', test=test)

因此在base.html中你可以调用所需的对象,在这种情况下进行测试。

<!DOCTYPE html>
<html>
<head>
    <title>My base page</title>
</head>
<body>
    {% block body %}
    {% endblock %}

    <!-- same text to all pages -->
    {{ test }}
</body>
</html>

当然,如果它只是一个字符串,我可以在HTML-Base文件中手动编写,但我要问的是因为我要实现sqlAlchemy和动态对象,这些对象会随着时间的推移而改变 - 结束或数据库。 例如,它可以是Greetings(用户名),或者今天它是(时间)

1 个答案:

答案 0 :(得分:1)

结帐context processors。基本上,它们是将字典键/值注入应用程序中所有模板的一种方法。对于上面的例子:

@app.context_processor
def inject_test():
    return {'test': 'Available to all'}