如何在Jinja 2中使用3rd party应用模板标签?
问题内容:
我正在为我的Django网站尝试Jinja2。
现在,由于Jinja2不是官方的Django模板引擎,并且它拒绝识别/加载我在Jjinja2之前使用的模板标签。
现在,即使必须在模板标签创建方面进行更改,那么如何在第三方应用程序中进行反映呢?
在那种情况下,由于系统必须按照Jinja2运行,因此似乎无法使用Jinja2。
(我还coffin
用作Jinja-Django的适配器)。
问题答案:
根据棺材文档,您将必须将所有自定义django模板标签重写为自定义Jinja2扩展名。
您还可以使用jinja2宏功能来模拟Django的模板标签。最明显的区别是对于Jinja2宏,有必要通过模板上下文提供所有上下文数据,而在Django标签中,您可以使用其他方式(例如从数据库加载或调用其他Python库)访问数据。
我已经使用Jinja2模板已有一段时间了,而无需创建自定义模板标签。
可以在网站上的一个应用程序中使用django模板,而在另一应用程序中使用jinja2,这不是问题,但是从django模板导入或扩展jinja2模板并不容易,反之亦然。