2012-07-31 70 views
0

我的設置文件有USE_TZ = True和TIME_ZONE ='GMT'。我有中間件檢查用戶的時區並將其設置爲當前時區,該時區正常工作。但是,當我從表單中獲取日期時間字段並將其存儲在數據庫中時,存儲的時間是美國/東部而不是UTC。例如,如果我有一個用戶的時區爲US/Central,並且他們填寫了一個帶有日期時間字段的表單並選擇上午8:00,則它將存儲爲數據庫中上午9:00。它應該在數據庫中存儲爲13:00(下午1點),因爲在夏令時的情況下,從US/Central到UTC的偏移量現在爲5小時。相反,它只能抵消1小時,這表明美國/東部。django 1.4時區未存儲在UTC中的db - 爲什麼?

任何幫助,非常感謝。

+0

我的數據庫是postgresql。 – mb52089 2012-07-31 12:35:29

+0

您是否嘗試過UT或UTC(TIME_ZONE ='UT')? http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE – scoopseven 2012-07-31 12:40:35

+0

非常感謝您的評論。我剛纔發現它實際上工作正常,但django管理員顯示的時間與我當地的時間相關,因此造成混亂。存儲在數據庫中的時間實際上正確地抵消了UTC。 – mb52089 2012-07-31 12:53:43

回答

1

我剛纔發現它實際上工作正常,但在django管理員顯示的時間是相對於我的本地時間,因此混亂。存儲在數據庫中的時間實際上正確地抵消了UTC。菜鳥的錯誤,但我是一名新秀。

相關問題