我正试图用过滤器计算出我的jinja2中记录的年龄。我用以下方式创建了一个简单的过滤器。日期存储在mongodb字段中,其原始格式应为python datetime对象的格式。以下是记录的示例:
"date_update": {
"$date": "2016-02-29T11:13:41.730Z"
},
app.jinja_env.filters['record'] = lambda u: record(u)
def record(date_obj):
print(date_obj)
print(type(date_obj))
return (datetime.datetime.today() - date_obj).days
我按以下方式使用过滤器:
{{ myrec.date_update|record }}
如果我查看输出,我会看到以下内容:
class 'jinja2.runtime.Undefined'
所以我的问题是,我应该如何以正确的格式处理jinja2中的日期。
答案 0 :(得分:1)
这看起来像是模板中的未知变量名称。从目前为止发布的所有内容来看,目前尚不清楚是否首先将变量myrec
传递给模板渲染器。因此,为了获得更好的帮助,请发布一个展示错误的最小的,自包含的示例。