Je suis en train d'utiliser des temps dans un système intranet, ce qui aura des serveurs indépendants/systèmes fonctionnent dans des fuseaux horaires différents. Parce que les fuseaux horaires sont pénibles et que mon utilisation des temps est assez simple (en montrant à l'utilisateur quand il a modifié un fichier, par exemple), j'ai pensé que j'utiliserais simplement des temps naïfs. Cependant, le fuseau horaire naïf de Django est incorrect.Django incorrect naïf fuseau horaire du système?
Settings.py:
# No TIME_ZONE specified because I want it to use whatever the system time is
USE_L10N = False
USE_TZ = False
partir d'une console Django, je lance os.getenv('TZ')
et il retourne 'America/Chicago'
, si l'ordinateur est réglé sur America/New_York
. (Si je l'appelle date
dans une ligne de commande, il montre que je suis en HAE). Par conséquent, quand je l'appelle timezone.now()
ou datetime.datetime.now()
le résultat est une heure plus tôt. (Quand j'appelle timezone.is_aware()
sur l'un ou l'autre de ces derniers, il renvoie False
.)
Ma question: pourquoi ce fuseau horaire est-il incorrect par rapport à l'heure du système, et est-ce que je peux le réparer?
Détermine le fuseau horaire en fonction de la 'TIME_ZONE' dans les paramètres. Mon but est d'éviter d'avoir à changer cela manuellement pour chaque utilisation. Si j'essaie de l'utiliser sans l'ensemble 'TIME_ZONE', l'option par défaut est' America/Chicago' – Pterosaur