第九章 时区问题

odoo是国际化的软件,要适用不同国家的不同时区,因此odoo中存储的时间均是UTC时间。用户在使用系统的过程中可以根据自己所处的地理位置,选择适合自己的时区。

时区转换

多时区带来的一个问题就是在数据导入(通常是API接口与第三方系统对接)时带来的时区不一致的问题。举例来说,某公司位于中国,有一套面向国内的在线零售系统A,使用的是CST时间。当A系统与odoo进行数据交换的时候,A传入的是东八区时间,我们要在odoo的接口中将这个时间更正为UTC时间,这样才能保证数据的一致性。

为了方便开发过程中的转换,笔者封装了一个时区转换方法。

from autils.datetime import DateTime

local = DateTime(datetime(2020, 1, 1, 0, 0, 0), tz="Asia/Shanghai")

local.to_utc_time_str()

----------------------
2019-12-31 16:00:00

依赖:autils

也可以通过pypi直接安装

pip3 install autils

results matching ""

    No results matching ""