我在我的项目中使用Flask-Security,我想扩展它提供的模板(即登录),以便用自定义CSS设置样式。按照文档的说明,我已经将SECURITY_LOGIN_USER_TEMPLATE配置值更改为指向我的模板。在这个模板中,我扩展了Flask-Security ("security/login_user.html")提供的模板,并更改了它定义的一些块(或它的基础)的内容。
我的模板按照预期呈现(看起来像标准的"security/login_user.html"),唯一的问题是我试图覆盖的块没有被覆盖。
我的模板如下所示: login.html:
{% extends "security/login_user.html" %}
{% block content %}
<p>There should be no form.</p>
{% endblock content %}为了确认我没有渲染原始模板,我尝试将模板文件的内容更改为空,并按预期工作-没有渲染任何内容。
我遗漏了什么?
发布于 2019-05-31 04:25:06
使用调试器一段时间后,我意识到PyPi上提供的Flask-Security包有问题。在开发我的项目时,我依赖于他们的官方github page上的源代码。如果你看一下登录模板,你会注意到它确实扩展了基本模板,它提供了以后可以覆盖的块的定义。
但是,当您从PyPi下载包,然后检查模板时,您会注意到它不同-它不使用Jinja2继承,也不使用任何块,因此问题中描述的问题。
换句话说,PyPi包反映了最新的稳定版本(如nick-K9所指出的),这与开发分支有很大的不同。
https://stackoverflow.com/questions/56384188
复制相似问题