【发布时间】:2018-06-19 11:11:03
【问题描述】:
我正在努力创建我的第一个 cookiecutter。总的来说,这很顺利,但我现在想添加一个我自己的 jinja2 过滤器。
根据 cmets in this issue,我创建了一个新的 Jinja2 扩展 much like the one here。 此扩展的完整代码在这里:
但是,以下简单示例演示了相同的错误:
# -*- coding: utf-8 -*-
from jinja2.ext import Extension
def slug(value):
return value
class PaperTitleExtension(Extension):
def __init__(self, environment):
super(PaperTitleExtension, self).__init__(environment)
environment.filters['slug'] = slug
我已将此代码放入新的jinja2_extensions 目录并添加了一个简单的__init__.py,如下所示:
# -*- coding: utf-8 -*-
from paper_title import PaperTitleExtension
__all__ = ['PaperTitleExtension']
基于this piece of documentation,我还在我的 `cookiecutter.json' 文件中添加了以下内容:
"_extensions": ["jinja2_extensions.PaperTitleExtension"]
但是,运行它会产生以下错误:
$ cookiecutter sigchiproceedings-cookiecutter
Unable to load extension: No module named 'jinja2_extensions'
我猜我在这里遗漏了一些步骤,有人可以帮忙吗?
【问题讨论】:
-
嘿@saff 你找到问题了吗?
-
@ex0b1t - 不,很遗憾没有。
-
@Staff 我最终迁移到 saojs.org 工作方式更好 IMO。
标签: python jinja2 cookiecutter