开发者社区> 问答> 正文

为什么Jinja2扩展语句和块语句不起作用?

这是我的base.html

<html>
    <head>
        {% block head %}
        {% endblock %}
   </head>
    <body>
        Outside Block
        {% block body %}
        {% endblock %}
    </body>
</html>

这是我的index.html

{% extends 'templates/base.html' %}    
{% block body %}
<h1> Inside Block </h1>
{% endblock %}

我的终点:

@app.route('/')
def home():
    return render_template('base.html')

我的浏览器显示

Outside Block

每当执行代码时,都会显示除块以外的所有内容。我什至可以通过将其作为参数传递来显示值,并将其显示为{{value}},或者使用if条件甚至include都可以正常工作。只是block语句不起作用。

这可能是什么原因?

问题来源:stackoverflow

展开
收起
is大龙 2020-03-21 12:51:01 423 0
1 条回答
写回答
取消 提交回答
  • 您需要返回index.html而不是base.html

    @app.route('/')
    def home():
        return render_template('index.html')
    

    另外,您还需要在index.html文件中扩展'base.html'而不是'templates / base.html'。

    回答来源:stackoverflow

    2020-03-21 12:51:14
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JS 语言在引擎级别的执行过程 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载