为多个加载器设置 aiohttp_jinja2
Posted
技术标签:
【中文标题】为多个加载器设置 aiohttp_jinja2【英文标题】:setup aiohttp_jinja2 for multiple loader 【发布时间】:2017-07-23 16:43:11 【问题描述】:我想为多个加载器(PackageLoader,FileSystemLoader)设置aiohttp_jinja2,例如:
def setup_template_engine(app):
aiohttp_jinja2.setup(app, loader=jinja2.FileSystemLoader(str(Path('.') / 'templates')))
aiohttp_jinja2.setup(app, loader=jinja2.PackageLoader('app', 'templates')) # in this case, only last setup works
和问题是:如何为多个加载器设置aiohttp_jinja2?
【问题讨论】:
【参考方案1】:我认为您可能会考虑创建多个环境,如下所示:https://jinja.palletsprojects.com/en/master/api/#basics
他们说:
大多数应用程序会在应用程序初始化时创建一个 Environment 对象并使用它来加载模板。然而,在某些情况下,如果使用不同的配置,并排设置多个环境会很有用。
那么您将拥有一个带有 FileSystemLoader 的环境和一个带有 PackageLoader 的环境
【讨论】:
以上是关于为多个加载器设置 aiohttp_jinja2的主要内容,如果未能解决你的问题,请参考以下文章