如何制作仅包含神社模板的 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。绝对需要做一些重命名和重构
目前有一个项目,我正在尝试扩展位于 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。绝对需要做一些重命名和重构