python
  • flask
  • jinja2
  • 2017-07-17 28 views 0 likes 
    0

    我有一行代码,我想添加到我的Jinja2 HTML页面的头部。我可以很容易地将它添加为任何其他元标记或等,但我只需要在一个页面中的代码,因此没有理由保持在网站的标题。链接到只有一个Jinja模板的脚本

    我试图将它作为字符串传递给render_template,但它没有出现在最终的渲染中。

    @app.route('/page') 
    def page(): 
        str = "<script src='https://site.xy/api.js'></script>" 
    
        return render_template('page.html', script_string = str) 
    

    page.html

    {% extends "layout.html" %} 
    {{script_string}} 
    {% block content %} 
    

    我也试图做到这一点在与块的布局文件,但是失败了。

    {% block js %}<script src='https://site.xy/api.js'></script>{% endblock %} 
    

    我怎么能脚本标记添加到的page.html头而不将其添加到任何其他页面?

    回答

    3

    使用该块,但默认保留为空,并将其设置为page.html

    layout.html

    <head> 
        {% block head_js %}{% endblock %} 
    </head> 
    

    page.html

    {% block head_js %}<script src='https://example.com/api.js'></script>{% endblock %} 
    
    相关问题