Opened 16 years ago
Last modified 11 years ago
#2626 closed Bug
Datetime handling is broken when dealing with more than one time zone — at Version 8
Reported by: | Owned by: | nobody | |
---|---|---|---|
Component: | Core (Other) | Version: | |
Severity: | Normal | Keywords: | |
Cc: | mike.scott@…, nreilly@…, George Song, miracle2k, jedie, Forest Bond, bronger@…, Chris Chambers, Dan Fairs, cg@…, louis30, David Foster | Triage Stage: | Accepted |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description (last modified by )
Django doesn't handle multiple time zones well.
Datetimes are potentially stored with a time zone offset based on settings.TIME_ZONE
(only for PostgreSQL), and retrieved as naive datetime
objects. This is fine when working on a standard site publishing items within a single time zone, but quickly becomes pathological when working with more than one time zone, or when transitioning an existing site to a new time zone.
I propose that Django's datetime handling be altered to ignore settings.TIME_ZONE
on all database backends, and let the appropriate Fields handle time zone conversion. I've already written a DateTimeZoneField
that appropriately handles multiple time zones and returns timezone-aware datetime
objects; for it to work consistently, however, the PostgreSQL backends need to stop using TIMESTAMP WITH TIME ZONE
and SET TIME ZONE
.
In summary:
1) The PostgreSQL backends should ignore time zones completely.
2) An appropriate Field
, rather than a backend, should handle time zone support.
Discussion thread:
http://groups.google.com/group/django-developers/browse_thread/thread/b8c885389374c040
Change History (8)
comment:1 Changed 15 years ago by
Triage Stage: | Unreviewed → Accepted |
---|
comment:2 Changed 15 years ago by
Reporter: | changed from Tom Tobin <korpios@…> to Tom Tobin <korpios@…> |
---|
comment:3 Changed 15 years ago by
Owner: | changed from nobody to Brian Rosner |
---|---|
Status: | new → assigned |
comment:4 Changed 15 years ago by
Cc: | mike.scott@… added |
---|
comment:5 Changed 15 years ago by
Owner: | Brian Rosner deleted |
---|---|
Status: | assigned → new |
comment:6 Changed 15 years ago by
Owner: | set to nobody |
---|
comment:7 Changed 14 years ago by
Cc: | korpios@… added |
---|
comment:8 Changed 14 years ago by
Description: | modified (diff) |
---|
Go ahead, Tom - write us a patch! Check out #2447 which may be related.
I agree that the
os.environ['TZ']
is an ugly hack, there are other related tickets that back this up ;)