jinja2如何在datetime中删除微秒

Kid*_*ddo 1 python jinja2 flask

在Jinja2模板中,我想显示最后一次登录:

Last Login: {{ user.last_seen }}
Run Code Online (Sandbox Code Playgroud)

last_seen 应该是sqlite中的日期时间对象.

它总是给我一些像: 2014-07-27 23:09:36.467761

在模板上显示时,如何删除微秒部分?

Mar*_*ers 8

您正在使用默认的字符串格式化一个的datetime对象,它在本质上是一样的通话datetime.isoformat(' '),包括微秒组件的格式.

如果您想要不同的格式,请使用以下datetime.datetime.strftime()方法明确地执行此操作:

Last Login: {{ user.last_seen.strftime('%Y-%m-%d %H:%M:%S') }}
Run Code Online (Sandbox Code Playgroud)

或者,生成一个新的datetime对象,将微秒组件设置为0,然后插入:

Last Login: {{ user.last_seen.replace(microsecond=0) }}
Run Code Online (Sandbox Code Playgroud)