0

我的模型上有一个日期时间

2013-02-19 05:29:27.874648

我正在使用 jquery timeago .. 但问题是它没有给出期望的输出..

<time class="timeago" datetime="{{ activity.created }}">{{ activity.date }}</time>

上面的代码是我的示例 html 代码..

这是我的javascript:

<script>
    jQuery(document).ready(function() {
      jQuery("time.timeago").timeago();
    });
</script>

我的问题是.. 我应该将其转换为 UTC 格式吗??.. 如果是这样!我该如何转换它?..以python方式或javascript转换它??..我该怎么做?

4

2 回答 2

0

如果我理解你的问题。

如何转换为 UTC

from datetime import datetime
from pytz import timezone

date_str = "2009-05-05 22:28:15"
datetime_obj = datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S")
datetime_obj_utc = datetime_obj.replace(tzinfo=timezone('UTC'))
print datetime_obj_utc.strftime("%Y-%m-%d %H:%M:%S %Z%z")

你需要安装pytz

如果您想在当前时间添加一些时间戳。

做这样的事情

future = datetime.datetime.now() + datetime.timedelta(minutes=5)
return time.mktime(future.timetuple()).

请看这篇文章time.mktime

于 2013-02-19T06:16:02.000 回答
0

您通常希望服务器上的日期已经采用 UTC(或显式偏移 UTC),然后在最后一秒(双关语)转换为客户端的本地时区。

使用 jquery-timeago,假设日期已经(相对于)UTC,您可以将其格式化(在 Python 中,服务器端)并且 jquery-timeago 应该正确计算其余部分。

这是我在自己的 HTML 模板中用来格式化 UTC 日期的方法:

{{ activity.date.isoformat() + 'Z' }}
于 2013-02-19T06:17:16.930 回答