1
0
mirror of https://github.com/django/django.git synced 2025-11-07 07:15:35 +00:00

Fixed #14711 -- Corrected the calculation for the previous month in generic date views. Thanks to msundstr for the report and patch.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@15438 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Russell Keith-Magee
2011-02-06 06:31:52 +00:00
parent 7494345c39
commit d89ad6423c
2 changed files with 28 additions and 4 deletions

View File

@@ -70,7 +70,7 @@ class MonthMixin(object):
Get the previous valid month.
"""
first_day, last_day = _month_bounds(date)
prev = (first_day - datetime.timedelta(days=1)).replace(day=1)
prev = (first_day - datetime.timedelta(days=1))
return _get_next_prev_month(self, prev, is_previous=True, use_first_day=True)
@@ -516,7 +516,7 @@ def _get_next_prev_month(generic_view, naive_result, is_previous, use_first_day)
This is a bit complicated since it handles both next and previous months
and days (for MonthArchiveView and DayArchiveView); hence the coupling to generic_view.
However in essance the logic comes down to:
However in essence the logic comes down to:
* If allow_empty and allow_future are both true, this is easy: just
return the naive result (just the next/previous day or month,
@@ -546,7 +546,7 @@ def _get_next_prev_month(generic_view, naive_result, is_previous, use_first_day)
# whose date_field is at least (greater than/less than) the given
# naive result
else:
# Construct a lookup and an ordering depending on weather we're doing
# Construct a lookup and an ordering depending on whether we're doing
# a previous date or a next date lookup.
if is_previous:
lookup = {'%s__lte' % date_field: naive_result}
@@ -569,7 +569,7 @@ def _get_next_prev_month(generic_view, naive_result, is_previous, use_first_day)
result = result.date()
# For month views, we always want to have a date that's the first of the
# month for consistancy's sake.
# month for consistency's sake.
if result and use_first_day:
result = result.replace(day=1)