在Jinja模板中将UNIX时间转换为datetime对象

Leo*_*ark 6 python google-app-engine timestamp python-datetime

我想将我的时间戳转换为jinja2中的datetime ..

这是我的示例代码:

import time

date = time.time()
self.tv['date'] = date
Run Code Online (Sandbox Code Playgroud)

示例html:

<p>{{ date }}</p>
Run Code Online (Sandbox Code Playgroud)

我想在python中使用jinja2将它转换为datetime ..

谢谢..

Kyu*_*Kim 10

制作一个自定义过滤器

@app.template_filter('ctime')
def timectime(s):
    return time.ctime(s) # datetime.datetime.fromtimestamp(s)
Run Code Online (Sandbox Code Playgroud)

并使用您的模板过滤器

{{ date | ctime }}
Run Code Online (Sandbox Code Playgroud)

  • [`的ctime()`使用服务器的时区(http://stackoverflow.com/questions/15149712/can-i-convert-timestamp-to-datetime-in-python-jinja2#comment45640509_15149724).确保它是你想要的. (3认同)

Jon*_*nts 3

您可以在将其传递给模板之前对其进行转换,例如:

>>> import time
>>> date = time.time()
>>> from datetime import datetime
>>> datetime.fromtimestamp(date)
datetime.datetime(2013, 3, 1, 2, 57, 29, 472572)
Run Code Online (Sandbox Code Playgroud)

并可选择使用格式:

>>> format(datetime.fromtimestamp(date), '%Y%m%d')
'20130301'
Run Code Online (Sandbox Code Playgroud)