跳至内容
菜单
此问题已终结

Hey i am trying to parse data from portal into erp. I used Datetime-local in my html form and when i confirm the record from here it goes to database accurately. Its obvious because my psql shows timezone 'Asia/Karachi'. Its all good till that point but when i come inside erp and check that record it has additional 5+ hours. Y is it so? when my poostgres and odoo both share the same timezone then y i am getting these additional 5 hours?

Kindly help

形象
丢弃
最佳答案

Try the following code to convert the datetime before passing it to the database:

import pytz

check_time = fields.Datetime.to_datetime(check_time)
local_tz = self.env.user.tz // Timezone of the user
local_dt = pytz.timezone(local_tz)
local_dt = local_dt.localize(check_time, is_dst=None)
check_time = local_dt.astimezone(pytz.utc)

Pass check_time to the database and check the date in Odoo.

形象
丢弃
编写者

Thank you so much, its working now.

相关帖文 回复 查看 活动
3
7月 25
3570
1
1月 24
1632
2
7月 22
1393
0
1月 20
3712
0
5月 22
2048