【发布时间】:2019-01-25 04:30:59
【问题描述】:
我有几个金字塔项目,我正在将它们组合成一个带有 jinja 文件的项目,这些文件的行如下:
{% extends 'some_project:templates/layout.jinja2'%}
和
{% extends 'other_project:templates/layout.jinja2'%}
如果我可以简单地将所有子项目文件放入子文件夹中,然后注册一个额外的资产规范,这样some_project:templates/ 就变成了combo_projects:templates/some_project/templates,而我不必接触任何模板,那就太好了。
我添加了...
config.override_asset(to_override='other_project:templates/', override_with='combo_projects:templates/some_project/templates'
...最初抱怨缺少模块 other_project,所以我制作了一个虚拟模块,一切似乎都可以正常工作,但我担心我滥用了系统并且正站在纸牌屋上。
有没有更好的方法来做到这一点?阅读有关资产规范 https://docs.pylonsproject.org/projects/pyramid/en/latest/narr/assets.html#asset-specifications 或覆盖其中链接的文档并没有给我任何见解。
显然我也可以更新所有文件,我可能会这样做,但我想知道我所做的是否安全,以及是否有更好的方法来完成同样的事情。
【问题讨论】: