odoo时区问题解决
python程序中的时区
···
#必须先更改时区,才调用datetime。否则更改是不生效的。这可能是python bug
import(‘os’).environ[‘TZ’] = ‘UTC’
import datetime
print(datetime.datetime.now()
2019-11-27 01:31:14.868105
···
这里面都是正常的。
odoo
看odoo代码
···
import(‘os’).environ[‘TZ’] = ‘UTC’
import odoo
if name == “main”:
import datetime
print(datetime.datetime.now())
print(datetime.datetime.utcnow())
odoo.cli.main()
···
本身一直用pycharm 启动
但是并不是 utc时间。直到发现上面的时区bug。才想到 可能是 pycharm 启动时先调用了 datetime 。所以时区失效了。
用命令行启动完全正常
解决
发现 pycharm 可以有环境变量的设置。