Это определенно интересно. Конечно же, MonthMixin
включает get_next_month
/ get_prev_month
методы, а DayMixin
включает get_next_day
/ get_prev_day
методы. Тем не менее, как YearMixin, так и WeekMixin не имеют функционального эквивалента в своих определениях. Похоже на недосмотр со стороны команды Джанго.
Я думаю, что вам лучше всего подклассировать WeekArchiveView или BaseWeekArchiveView (если вы в конечном итоге захотите изменить формат ответа и не хотите повторно реализовывать свои методы) и добавить свои собственные get_next_week
/ get_prev_week
методы. Тогда пусть ваш вид наследуется от вашего подкласса. Простая модификация методов DayMixin
s должна быть достаточной.
def get_next_week(self, date):
"""
Get the next valid week.
"""
next = date + datetime.timedelta(days=7)
return _get_next_prev_month(self, next, is_previous=False, use_first_day=False)
def get_previous_week(self, date):
"""
Get the previous valid week.
"""
prev = date - datetime.timedelta(days=7)
return _get_next_prev_month(self, prev, is_previous=True, use_first_day=False)