2017-06-05 77 views
0

版本:Django的DateTimeField字段凌亂與天真,知道時間戳字段中的PostgreSQL

Django的1.11

的PostgreSQL 9.6(AWS RDS)

Django的settings.py:

TIME_ZONE =「亞洲/ Seoul'

USE_TZ = False

我的問題:

去年,我的django應用程序將數據庫從MySQL遷移到PostgreSQL。很好。但我發現很大的麻煩。

在MySQL中生成的表具有DateTimeField,它對應於PostgreSQL中樸素的時間戳字段(不帶時區)。但是在PostgreSQL中生成的表具有DateTimeField,它對應於感知時間戳字段(帶有時區)。它以UTC存儲所有時間戳。

因此,我的數據庫表是凌亂的幼稚和意識到時間戳字段。

如何解決這個問題呢?

以下是解決方案,我認爲,

  1. 轉換天真時間戳字段,以瞭解時間戳字段。 我認爲這是最好的做法。但天真的時間戳字段太多了。我擔心因轉換而丟失數據。

  2. 將感知的時間戳字段轉換爲樸素的時間戳字段。 我覺得這是簡單的方法之一。但我聽說天真的時間戳字段不是練習。

  3. 沒有任何變化。實際上,我不知道時間戳字段是凌亂的,直到我檢查DB。 Djano應用程序現在運行良好。但我擔心這是未來的大麻煩。

  4. 更改AWS RDS中的時區設置。這是可能的和解決方案?

對不起,我可憐的英語。請指教。

回答

0

將樸素時間戳字段轉換爲感知時間戳字段。我認爲這是最好的做法。但天真的時間戳字段太多了。我擔心因轉換而丟失數據。

你是對的,最好的結果是獲得所有天真的值到時區感知值。也許你想問一個關於阻止你這樣做的問題的新問題?

+0

謝謝你的回答。我決定將所有時間戳字段從天真轉換爲意識。 – user3586239

相關問題