使用Jinja2,我如何格式化一个日期字段?我知道在Python中我可以简单地做到这一点。
print(car.date_of_manufacture.strftime(‘%Y-%m-%d’))
有两种方法可以做到这一点。直接的方法是在你的模板中简单地调用(并打印)strftime()方法,比如说
{{ car.date_of_manufacture.strftime(‘%Y-%m-%d’) }}
另一个更好的方法是定义你自己的过滤器,例如。
from flask import Flask
import babel
app = Flask(__name__)
@app.template_filter()
def format_datetime(value, format='medium'):
if format == 'full':
format="EEEE, d. MMMM y 'at' HH:mm"
elif format == 'medium':
format="EE dd.MM.y HH:mm"
return babel.dates.format_datetime(value, format)
(由于i18n方面的原因,这个过滤器是基于babel的,但你也可以使用strftime)。这个过滤器的优点是,你可以写成
{{ car.date_of_manufacture|format_datetime }}
{{ car.date_of_manufacture|format_datetime('full') }}
https://www.qiniu.com/qfans/qnso-4830535#comments