/ / Django: Časové pásmo uložené v MySQL DB nie je správne - mysql, django, timezone

Django: Časové pásmo uložené v MySQL DB nie je správne - mysql, django, timezone

Mám aplikáciu, ktorá používa ako časovú zónu "Asia / Taipei" v settings.py a používa auto_now = true v jednom z dátumových polí na models.py:

--- settings.py ---
TIME_ZONE = "Asia/Taipei"
--- models.py ---
models.DateTimeField(auto_now=True)

Na mojom systéme sa Taipei používa aj ako moje časové pásmo: tu zadajte popis obrázku

Na pracovnej ploche MySQL som sa už spýtal na celosvetovú aj na zasadnutí tz a ich návratmi sú "SYSTÉM": tu zadajte popis obrázku

Mojou otázkou je, kedy sa do databázy pridá položka, časové pásmo špecifikované v systéme a v nastavení.py nebolo použité. Pozrite si vzorovú snímku: tu zadajte popis obrázku

Čo mi chýba? Robiť zlé? Vopred ďakujem!

odpovede:

5 pre odpoveď č. 1

Zvyčajne bude databáza ukladať čas UTC štandardne a príslušná aplikácia vykoná konverziu na základe nastavení / konfigurácií.

Vo vašom prípade to záleží na vašom USE_TZ nastavenia.

Keď USE_TZ je nepravdivé, je to časové pásmo vktoré Django uloží všetky dátumy. Keď je hodnota USE_TZ True, je to predvolené časové pásmo Django použije na zobrazenie dátumov v šablónach a interpretáciu dátumy zadané vo formulároch.

Viac podrobností si môžete pozrieť


3 pre odpoveď č. 2

teraz pracujem USE_TZ = False