Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
3 Risposte
11737 Visualizzazioni

I am developing odoo8 in a windows pc with eclipse and pydev.

My problem is datetime generated with fileds.Datetime.now() is local time (not UTC time).

Also, relevant field data in PostgreSQL database is local format (but reserved fields in database like create_date and write_date are in UTC format)

This makes datetime fields showing in UI wrong.

What is the root cause?

Avatar
Abbandona
Risposta migliore

Hello,

The idea is to always stock date in utc in database.

And display it in the timezone of the current user...

So in the ui, you will see the date from db + the lambda of your timezone.

Avatar
Abbandona
Autore

You are right, and i am aware of that. My problem is that I get date in database in local time format, NOT a naive UTC time. For example, i have a Datetime field, and the local time in China now is 22:00. After i write this field to fields.Datetime.now() programmatically, I get 22:00 in the database, NOT 14:00 . Another weird thing is, write_date field of this record is 14:00 (RIGHT UTC time, and create_date field will always be correct).

Risposta migliore

Check if the user's timezone is set to UTC? settings -> users -> [user] -> preferences (tab)

Check if the postgres database timezone is correct:

SELECT current_setting('TIMEZONE') TZ;

Avatar
Abbandona
Post correlati Risposte Visualizzazioni Attività
3
giu 25
1010
1
lug 23
3701
4
dic 22
9652
2
apr 21
3709
1
ott 18
5062