Filter 如何以及在何处定义自定义jinja2测试

Filter 如何以及在何处定义自定义jinja2测试,filter,flask,jinja2,Filter,Flask,Jinja2,我知道这对每个人来说都是显而易见的,除了我 但是在哪里以及如何定义定制的jinja2测试呢 我试着在我的烧瓶中指定: import flask import jinja2 from jinja2 import environment as env from jinja2 import * app = Flask(__name__) app.config.from_object(__name__) app = Flask(__name__) # jinja2 filter def isList

我知道这对每个人来说都是显而易见的,除了我

但是在哪里以及如何定义定制的jinja2测试呢

我试着在我的烧瓶中指定:

import flask
import jinja2
from jinja2 import environment as env
from jinja2 import *

app = Flask(__name__)
app.config.from_object(__name__)
app = Flask(__name__)

# jinja2 filter
def isList(value):
  return isinstance(value, list)
env.tests['isList'] = isList
由此产生的错误是:

AttributeError: 'module' object has no attribute 'tests'

为Flask应用程序配置的Jinja2环境是
app.jinja_env
。如果将代码中的最后一行更改为

app.jinja_env.tests['isList'] = isList

它应该可以正常工作。

为Flask应用程序配置的Jinja2环境是
app.jinja_env
。如果将代码中的最后一行更改为

app.jinja_env.tests['isList'] = isList
它应该能正常工作