如何制作仅包含神社模板的 python 包

How to make a python package containing only jinja templates

目前有一个项目,我正在尝试扩展位于 python 包中的 jinja2 模板。现在我正在努力制作一个包含 .html 个文件的 python 包。这是我目前拥有的:

sharedtemplates/
├── setup.py
└── templates
    ├── __init__.py
    ├── base.html
    ├── footer.html
    └── header.html

__init__.py 是空的,setup.py 是超基础的。

我当前工作的目录是这样设置的:

repo/
├── site.py
└── templates
    └── index.html

index.html 中,我会 {% extends 'base.html' %} 扩展 sharedtemplates 包中的基础。

site.py 有这个来确定模板加载的优先级:

template_loader = jinja2.ChoiceLoader([
    jinja2.PackageLoader('reposhared', 'templates'),
    app.jinja_loader
])

app.jinja_loader = template_loader

所以这会在 sharedtemplates/ 中加载模板目录,首先在我当前的 repo 目录中加载模板/。

谢谢。

我忘了 python setup.py 安装。我需要将模板放在另一个模板目录中。所以是sharedtemplates/templates/templates/base.html。绝对需要做一些重命名和重构