Odoo8.0单时区应用中的时区问题
来源:互联网 发布:淘宝店铺开通花呗支付 编辑:程序博客网 时间:2024/05/09 22:15
由于数据库中存储的是UTC时区,默认情况下数据导出和group by都存在时区问题。
彻底解决办法:将以UTC时区存储的数据改为按目标时区存储,并去掉JS中的时区转换。
1、修改Odoo系统环境时区:
odoo/openerp/__init__.py 文件
import os
os.environ['TZ'] = 'UTC' # 将这里的UTC 改为Asia/Shanghai 或其它目标时区
2、修改 web页面时区转换的JS文件:
odoo/addons/web/static/src/js/openerpframework.js 中的两个方法
openerp.str_to_datetime 字符串转时间
openerp.datetime_to_str 时间转字符串
去掉这两个方法中的UTC字符。
3、修改以UTC时间执行的SQL 查询或插入语句:
去掉所有带 "at time zone 'UTC'" 或 "at time zone 'utc'"字符串的语句。
odoo/openerp/models.py 特别是create_date、write_date字段值;
odoo/openerp/addons/base/ir/ir_cron.py 定时任务中UTC时区改为当前时区;
odoo/openerp/netsvc.py 备份下来的数据库名称时间标志
4、修改其他功能性模块中带 "at time zone" 字符串来取UTC时间的语句。
如 calendar 模块和 hr_timesheet_sheet模块
彻底解决办法:将以UTC时区存储的数据改为按目标时区存储,并去掉JS中的时区转换。
1、修改Odoo系统环境时区:
odoo/openerp/__init__.py 文件
import os
os.environ['TZ'] = 'UTC' # 将这里的UTC 改为Asia/Shanghai 或其它目标时区
2、修改 web页面时区转换的JS文件:
odoo/addons/web/static/src/js/openerpframework.js 中的两个方法
openerp.str_to_datetime 字符串转时间
openerp.datetime_to_str 时间转字符串
去掉这两个方法中的UTC字符。
3、修改以UTC时间执行的SQL 查询或插入语句:
去掉所有带 "at time zone 'UTC'" 或 "at time zone 'utc'"字符串的语句。
odoo/openerp/models.py 特别是create_date、write_date字段值;
odoo/openerp/addons/base/ir/ir_cron.py 定时任务中UTC时区改为当前时区;
odoo/openerp/netsvc.py 备份下来的数据库名称时间标志
4、修改其他功能性模块中带 "at time zone" 字符串来取UTC时间的语句。
如 calendar 模块和 hr_timesheet_sheet模块
0 0
- Odoo8.0单时区应用中的时区问题
- PHP应用时区问题
- rails中的时区问题
- wordpress中的时区问题
- odoo10.0时区问题
- 时区问题
- 时区
- 时区
- 时区
- 时区
- GAE 时区问题及模板函数应用
- PHP日期时间中的时区问题
- php中的date函数中时区问题
- php中的date函数中时区问题
- php中的date函数中时区问题
- php中的date函数中时区问题
- java 时区问题 SimpleDateFormat 时区大全
- Asp.net中的时区
- 移除有序数组中的重复数字2
- Failed to load class "org.slf4j.impl.StaticLoggerBinder问题故障的解决
- linux命令行中通过ssh复制文件(scp)到远程服务器(转载)
- iOS开发之第三方分享微信分享、朋友圈分享,史上最新最全第三方分享微信方式实现、朋友圈方式实现
- 開啓Cisco交換機DHCP Snooping功能(1)
- Odoo8.0单时区应用中的时区问题
- Intent.FLAG_RECEIVER_REPLACE_PENDING
- Mysql的这些坑
- Java性能调优
- CSS高级
- Java多线程--线程等待与唤醒
- Zeranoe FFmpeg - Builds
- CXF-DOSGI为webservice增加用户名密码权限校验
- iBATIS教程 (一)简单概念的介绍