django -使用jinja2模板引擎 自定义的过滤器
setting.py中
TEMPLATES = [
{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'OPTIONS': {
'environment': 'libs.tags.jj2.Env' #py文件的路径 这里的 Env是定义的一个类名
},
},
]
Env类所在文件代码
# coding: utf-8
"""添加自定义过滤器"""
from jinja2 import Environment
def yy_result_format(data):
"""小学英语 连词成句学生答案格式化"""
result = ""
for i in data.split(","):
result += i.split("|")[0] + " "
return result
class Env(Environment):
def __init__(self, *args, **kw):
Environment.__init__(self, *args, **kw)
self.filters.update(filters) #filters 自定义的过滤器,需要把它注册为Library的实例,让它能够被Django的模板语言找到