Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Browse files

Fixed #19929 -- Improved error when MySQL doesn't have TZ definitions.

Thanks tomas_00 for the report.
  • Loading branch information...
1 parent cf30469 commit 0c82b1dfc48b4870e8fbcfb782ae02cdca821e1f @aaugustin aaugustin committed
4 django/db/models/sql/
@@ -1057,6 +1057,10 @@ def results_iter(self):
# Datetimes are artifically returned in UTC on databases that
# don't support time zone. Restore the zone used in the query.
if settings.USE_TZ:
+ if datetime is None:
+ raise ValueError("Database returned an invalid value "
+ "in QuerySet.dates(). Are time zone "
+ "definitions installed?")
datetime = datetime.replace(tzinfo=None)
datetime = timezone.make_aware(datetime, self.query.tzinfo)
yield datetime
7 docs/ref/contrib/admin/index.txt
@@ -142,6 +142,13 @@ subclass::
e.g. if all the dates are in one month, it'll show the day-level
drill-down only.
+ .. note::
+ ``date_hierarchy`` uses :meth:`QuerySet.datetimes()
+ <django.db.models.query.QuerySet.datetimes>` internally. Please refer
+ to its documentation for some caveats when time zone support is
+ enabled (:setting:`USE_TZ = True <USE_TZ>`).
.. attribute:: ModelAdmin.exclude
This attribute, if given, should be a list of field names to exclude from

0 comments on commit 0c82b1d

Please sign in to comment.
Something went wrong with that request. Please try again.