如何自定义Flask Admin模板?

13

我想实现flask admin模板的RTL,我知道可以重写现有的模板,但如何仅更改CSS?有任何建议吗?

2个回答

32

将你的CSS更改放在一个新的CSS文件中,路径为/static/css/my_flask_admin.css

然后通过创建一个名为/templates/admin/master.html的文件并包含以下内容来覆盖HTML模板:

{% extends admin_base_template %}

{% block head_css %}
  {{ super() }}
  <link rel="stylesheet" href="{{ url_for('static', filename='css/my_flask_admin.css') }}">
{% endblock %}

extendsblock调用继承原始模板并钩入CSS定义。 super()调用加载原始CSS文件。 url_for(...)调用在这些文件后附加您的CSS文件,从而有效地将您的文件优先于原始文件。


节省了我的时间。 - T.W.R. Cole
1
部分答案。HTML模板在哪里,应该把它放在哪里? - Callam Delaney
@cal97g 请看 https://github.com/flask-admin/flask-admin 。例如,您可以使用示例子目录中的简单示例:将您的 CSS 文件放置在新创建的 static/css 子目录中。然后,您可以将上面的片段粘贴到其 template/admin/index.html 文件中,在第一行之后和第二行之前直接插入即可。 - Sebastian Stigler

1

在你的Flask应用中设置环境变量FLASK_ADMIN_SWATCH对我来说是个救命稻草,不必去糊弄任何HTML。

例如:FLASK_ADMIN_SWATCH = 'litera'


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接