使用烧瓶渲染模板功能,您可以快速雕刻复杂的页面。 我想要一个小的“向上投票”“模块”.html文件,它包含了使按钮工作所需的所有脚本和html。
在jinja中,您可以使用“extends to”标签将当前部分插入到extend调用的部分中,但是您可以从任何模板中调用模块吗?
所以1对多关系而不是多对1。
我可以在我想要的页面中插入按钮的所有代码,但我觉得将这个小模块包含在我需要的所有内容中会更好 - 而且速度更快。我也可以单独对这个模块进行更改,这将由整个项目继承。
有点像网站嵌入。
我想过几种方法,比如将按钮的信息解析为render_template函数的变量,但是你会建议做什么?
答案 0 :(得分:0)
您应该使用include
语句。这类似于在普通Python中使用import
。
但请注意,Jinja2也有import
声明。这与include
不同,因为import
面向使用文件中的宏和可执行代码;什么都没有呈现。因此,如果您要分离使用Jinja2语句执行的常见任务,则可以将这些任务导出到文件中的宏,然后在模板中import
。
但是,如果要包含渲染输出,这就是你正在做的事情,请坚持include
。