Класс YearMixin (Django 2.2)
from django.views.generic.dates import YearMixin
Mixin for views manipulating year-based data.
Диаграмма | Документация | Исходный код
Атрибуты
Определено в | |
---|---|
year = None
|
YearMixin |
year_format = '%Y'
|
YearMixin |
Методы
Возвращает дату начала текущего интервала.
def _get_current_year(self, date):
"""Return the start date of the current interval."""
return date.replace(month=1, day=1)
Возвращает дату начала следующего интервала. Интервал определяется датой начала <= дата элемента < следующая дата начала.
def _get_next_year(self, date):
"""
Return the start date of the next interval.
The interval is defined by start date <= item date < next start date.
"""
try:
return date.replace(year=date.year + 1, month=1, day=1)
except ValueError:
raise Http404(_("Date out of range"))
Get the next valid year.
def get_next_year(self, date):
"""Get the next valid year."""
return _get_next_prev(self, date, is_previous=False, period='year')
Get the previous valid year.
def get_previous_year(self, date):
"""Get the previous valid year."""
return _get_next_prev(self, date, is_previous=True, period='year')
Возвращает год, для которого это представление должно отображать данные.
def get_year(self):
"""Return the year for which this view should display data."""
year = self.year
if year is None:
try:
year = self.kwargs['year']
except KeyError:
try:
year = self.request.GET['year']
except KeyError:
raise Http404(_("No year specified"))
return year
Получает строку в формате года в синтаксисе strptime, которая будет использоваться для анализа года по переменным URL.
def get_year_format(self):
"""
Get a year format string in strptime syntax to be used to parse the
year from url variables.
"""
return self.year_format