代码之家  ›  专栏  ›  技术社区  ›  Jamie

在CSS链接的文件名中添加Jinja占位符

  •  0
  • Jamie  · 技术社区  · 2 月前

    (使用Flask、Jinja2、CSS)我想在CSS样式表的链接中放置一个Jinja占位符,这样我就可以将一个基本样式表应用于所有页面,并为通过Flask路由传入的每个页面设置唯一的样式表。

    我尝试过的:

    Flask/Python:

    return render_template("login.html", style="login.css", form=form)
    

    html/jinja2

    <link rel="stylesheet" href="{{ url_for('static', filename='styles.css') }}" />
    <link rel="stylesheet" href="{{ url_for('static', filename='{{style}}') }}">
    

    我没有收到任何错误,但第二个样式表没有在网站上进行更改。

    1 回复  |  直到 2 月前
        1
  •  3
  •   From Future    2 月前

    问题在于如何在第二个样式表链接中嵌套Jinja变量。试试这个作为替代方案:

    <link rel="stylesheet" href="{{ url_for('static', filename=style) }}">

    你不需要在“style”周围添加额外的引号,Jinja变量已经直接输出了它们的内容。