Django’s new Extract*() classes

Django 1.10 and even more 1.11 comes with convenient methods for annotating date parts to your query.

Django comes with these methods in terms of date manipulating

  • ExtractYear
  • ExtractMonth
  • ExtractDay
  • ExtractWeekDay
  • ExtractWeek

and with these in terms of time

  • ExtractHour
  • ExtractMinute
  • ExtractSecond

Then you can go like:


from django.db.models.functions import ExtractWeek
my_query.annotate(week=ExtractWeek(“created”))

Here is link to docs.

Thank you!

Show your support

Clapping shows how much you appreciated n!’s story.