Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet
3 Antworten
11775 Ansichten

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
Verwerfen
Beste Antwort

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
Verwerfen
Autor

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).

Beste Antwort

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
Verwerfen
Verknüpfte Beiträge Antworten Ansichten Aktivität
3
Juni 25
1030
1
Juli 23
3728
4
Dez. 22
9664
2
Apr. 21
3722
1
Okt. 18
5080