OpenERP奇怪的日期时间问题

时间:2012-03-29 05:45:13

标签: openerp

我正在使用OpenERP version 6.1OpenERP web clientOpenERP服务器安装在我的笔记本电脑上,因此服务器和客户端都安装在同一台机器上。

我面临的问题是,OpenERP似乎将当地时间视为当前UTC时间。 我在Windows中的时区设置为UTC+5:30 hours (Asia/Colombo),当前时间为11:00 AM。当我看到OpenERP使用的当前时间时,

  'date_created': lambda *a: datetime.now().strftime('%Y-%m-%d %H:%M:%S'),

它显示我03/29/2012 16:30:24而不是正确的时间11:00 AM。我的观察是,OpenERP得到当前时间,并将当前时间增加5小时30分钟并向我展示。因此,OpenERP假定我当前的当地时间为当前的UTC时间。

我必须在客户端站点安装该软件,但如果没有修复,我无法安装。

2 个答案:

答案 0 :(得分:5)

OpenERP v6.1 Release Notes状态,现在服务器和数据库专门使用UTC日期,忽略操作系统时区设置。

时区转换由客户端动态生成:

  • Web客户端使用浏览器设置(通常与客户端计算机设置匹配)
  • GTK客户端使用用户首选项中的设置。

答案 1 :(得分:3)

6.1插件代码中的datetime字段有一条黄金法则:  “ALWAYS work in UTC - compute in UTC - save in UTC” 当结果为UTC时,UTC值将正确转换为本地时间 以客户端形式展示。