按照javaeye上的文章 用jinja2替换掉django原来自带的模板系统。
鼓弄了一个jinja2的模板调用自定义函数的一个例子
class Loader(BaseLoader):
is_usable = True
env = jinja2.Environment(loader=jinja2.FileSystemLoader(settings.TEMPLATE_DIRS))
env.template_class = Template
#这里
env.filters['cut_date'] = datetimeformat
env.globals['url_for'] = urlresolvers.reverse
env.globals['MEDIA_URL'] = settings.MEDIA_URL
def datetimeformat(value, format='%H:%M / %d-%m-%Y'):
return value.strftime(format)
代码很简单,注册一个jinja2 的 filters(过滤器?)env.filters['cut_date'] = datetimeformat
调用datetimeformat函数返回需要的日期格式。