我們使用order_by對時間進行排序,可能出現數據沒有按照時間排序。其實是我們的錯覺,出現問題的原因是由於時區的問題。
下來我們就說一下解決時區的問題辦法

在setting文件里面注釋掉默認按照美國時間的TIME_ZON
添加中國/上海
下面是詳細配置解釋
Django 時間與時區設置問題
- 在Django的配置文件
settings.py中,有兩個配置參數是跟時間與時區有關的,分別是TIME_ZONE和USE_TZ - 如果
USE_TZ設置為True時,Django會使用系統默認設置的時區,即America/Chicago,此時的TIME_ZONE不管有沒有設置都不起作用。 - 如果
USE_TZ設置為False,而TIME_ZONE設置為None,則Django還是會使用默認的America/Chicago時間。若TIME_ZONE設置為其它時區的話,則還要分情況,如果是Windows系統,則TIME_ZONE設置是沒用的,Django會使用本機的時間。如果為其他系統,則使用該時區的時間,入設置USE_TZ = False,TIME_ZONE = 'Asia/Shanghai', 則使用上海的UTC時間。
