我遇到了 Flask-Appbuilder,因为它可以解决我的问题。我试图为每个模板加载不同的 css,其中只有骨架保持不变。
我找到了这个解决方案https://flask-appbuilder.readthedocs.io/en/latest/templates.html
然而它不起作用。无论如何不适合我。我用过pip3 install flask-appbuilder
,一切都很顺利。我在 templates 目录中创建了 appbuilder 目录。然后我用了:
{% extends 'appbuilder/base.html' %}
{% block head_css %}
{{ super() }}
<link rel="stylesheet" href="url_for('static',filename='css/your_css_file.css')}}">
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
可能是什么原因造成的?就好像block head_css
完全被忽略了。仅加载基本的 bootstrap css。
您可以拥有由所有模板扩展的单个layout.html
文件,然后通过访问基本上是呈现模板的视图函数,使用if
语句为每个模板选择正确的 CSS 样式表。request.endpoint
{% if request.endpoint == 'index' %}
<link href="{{ url_for('static', filename='main.css') }}" rel="stylesheet" type="text/css">
{% elif request.endpoint == 'another' %}
<link href="{{ url_for('static', filename='another.css') }}" rel="stylesheet" type="text/css">
{% endif %}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1862 次 |
最近记录: |