Flask中Jinja2模板|如何在Jinja2中格式化一个日期

使用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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值