diff --git a/django/views/generic/date_based.py b/django/views/generic/date_based.py index 1b9e8e9587267..a4746f05744fb 100644 --- a/django/views/generic/date_based.py +++ b/django/views/generic/date_based.py @@ -95,7 +95,11 @@ def archive_month(request, year, month, app_label, module_name, date_field, Templates: ``/_archive_month`` Context: month: - this month + (date) this month + next_month: + (date) the first day of the next month, or None if the next month is in the future + previous_month: + (date) the first day of the previous month object_list: list of objects published in the given month """ @@ -126,6 +130,8 @@ def archive_month(request, year, month, app_label, module_name, date_field, c = DjangoContext(request, { 'object_list': object_list, 'month': date, + 'next_month': (last_day < datetime.date.today()) and (last_day + datetime.timedelta(days=1)) or None, + 'previous_month': first_day - datetime.timedelta(days=1), }, context_processors) for key, value in extra_context.items(): if callable(value): diff --git a/docs/generic_views.txt b/docs/generic_views.txt index 8a970a8e76d4a..f9544e12b2bb2 100644 --- a/docs/generic_views.txt +++ b/docs/generic_views.txt @@ -192,7 +192,14 @@ The date-based generic functions are: Has the following template context: ``month`` - The given month (a datetime.datetime object) + The given month (a datetime.date object) + ``next_month`` + **New in Django development version.** The first day of the next + month, or None if the next month is in the future (a datetime.date + object) + ``previous_month`` + **New in Django development version.** The first day of the + previous month (a datetime.date object) ``object_list`` List of objects published in the given month