创建模板文件时出现此类错误。 我很简单地使用这种语法:
{{ "hello\how\are" | basename}}
请帮我解决。
由于
答案 0 :(得分:1)
从我在Jinja2官方文档中看到的,没有basename
过滤器。
请参阅Jinja2 - List of Builtin Filters。
编辑:
您可以编写自己的basename
过滤器,例如:
def basename(text):
return text.split('\\')[-1]
app.add_template_filter(basename)
答案 1 :(得分:1)
在使用Jinja2的独立程序中,我遇到了类似的错误。就我而言,我没有应用程序,因此无法使用app.add_template_filter。我有一个包含过滤器字典的Environment实例。我添加到该字典,并且过滤效果很好。如果环境是“ e”,那么我会执行以下操作:
e.filters['basename'] = basename
在上一个答案中假设一个基本名称函数。对于应用程序,app.jinja_env公开环境,因此变为:
app.jinja_env.filters['basename'] = basename