Миксины, основанные на дате¶
Примечание
Все атрибуты форматирования даты в этих миксинах используют символы формата strftime(). Не пытайтесь использовать символы формата из тега шаблона now, так как они несовместимы.
YearMixin¶
-
class
YearMixin[исходный код]¶ Миксин, который можно использовать для получения и предоставления информации о разборе для компонента года в дате.
Методы и атрибуты
-
year_format¶ Формат
strftime(), который будет использоваться при разборе года. По умолчанию это'%Y'.
-
year¶ Опционально Значение года в виде строки. По умолчанию установлено в
None, что означает, что год будет определяться другими средствами.
-
get_year_format()[исходный код]¶ Возвращает формат
strftime(), который следует использовать при разборе года. По умолчанию возвращаетyear_format.
-
get_year()[исходный код]¶ Возвращает год, для которого это представление будет отображать данные, в виде строки. Пробует следующие источники по порядку:
- Значение атрибута
YearMixin.year. - Значение аргумента
year, захваченного в шаблоне URL. - Значение аргумента запроса
yearGET.
Вызывает сообщение 404, если не найдена действительная спецификация года.
- Значение атрибута
-
get_next_year(date)[исходный код]¶ Возвращает объект даты, содержащий первый день года после указанной даты. Эта функция может также вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
get_previous_year(date)[исходный код]¶ Возвращает объект даты, содержащий первый день года до указанной даты. Эта функция может также вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
MonthMixin¶
-
class
MonthMixin[исходный код]¶ Миксин, который можно использовать для получения и предоставления информации о разборе для компонента месяца в дате.
Методы и атрибуты
-
month_format¶ Формат
strftime(), который будет использоваться при разборе месяца. По умолчанию это'%b'.
-
month¶ Опционально Значение для месяца в виде строки. По умолчанию установлено в
None, что означает, что месяц будет определен другим способом.
-
get_month_format()[исходный код]¶ Возвращает формат
strftime(), который следует использовать при разборе месяца. По умолчанию возвращаетmonth_format.
-
get_month()[исходный код]¶ Возвращает месяц, для которого это представление будет отображать данные, в виде строки. Пробует следующие источники по порядку:
- Значение атрибута
MonthMixin.month. - Значение аргумента
month, захваченного в шаблоне URL. - Значение аргумента запроса
monthGET.
Вызывает сообщение 404, если не найдена действительная спецификация месяца.
- Значение атрибута
-
get_next_month(date)[исходный код]¶ Возвращает объект date, содержащий первый день месяца после указанной даты. Эта функция может также вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
get_previous_month(date)[исходный код]¶ Возвращает объект даты, содержащий первый день месяца перед указанной датой. Эта функция может также вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
DayMixin¶
-
class
DayMixin[исходный код]¶ Миксин, который можно использовать для получения и предоставления информации о разборе для компонента дня в дате.
Методы и атрибуты
-
day_format¶ Формат
strftime(), который будет использоваться при разборе дня. По умолчанию это'%d'.
-
day¶ Опционально Значение дня в виде строки. По умолчанию установлено в
None, что означает, что день будет определяться другими средствами.
-
get_day_format()[исходный код]¶ Возвращает формат
strftime(), который следует использовать при разборе дня. По умолчанию возвращаетday_format.
-
get_day()[исходный код]¶ Возвращает день, для которого это представление будет отображать данные, в виде строки. Пробует следующие источники по порядку:
- Значение атрибута
DayMixin.day. - Значение аргумента
day, захваченного в шаблоне URL. - Значение аргумента запроса
dayGET.
Вызывает сообщение 404, если не найдена действительная спецификация дня.
- Значение атрибута
-
get_next_day(date)[исходный код]¶ Возвращает объект даты, содержащий следующий действительный день после указанной даты. Эта функция может также вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
get_previous_day(date)[исходный код]¶ Возвращает объект даты, содержащий предыдущий действительный день. Эта функция может также вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
WeekMixin¶
-
class
WeekMixin[исходный код]¶ Миксин, который можно использовать для получения и предоставления информации о разборе недельного компонента даты.
Методы и атрибуты
-
week_format¶ Формат
strftime(), который будет использоваться при разборе недели. По умолчанию это'%U', что означает, что неделя начинается в воскресенье. Установите значение'%W'или'%V'(неделя по стандарту ISO 8601), если ваша неделя начинается в понедельник.New in Django 3.2:Добавлена поддержка формата недели
'%V'.
-
week¶ Опционально Значение для недели в виде строки. По умолчанию установлено в
None, что означает, что неделя будет определена другим способом.
-
get_week_format()[исходный код]¶ Возвращает формат
strftime(), который следует использовать при разборе недели. По умолчанию возвращаетweek_format.
-
get_week()[исходный код]¶ Возвращает неделю, для которой это представление будет отображать данные, в виде строки. Пробует следующие источники по порядку:
- Значение атрибута
WeekMixin.week. - Значение аргумента
week, захваченного в шаблоне URL - Значение аргумента запроса
weekGET.
Вызывает сообщение 404, если не найдена действительная спецификация недели.
- Значение атрибута
-
get_next_week(date)[исходный код]¶ Возвращает объект даты, содержащий первый день недели после указанной даты. Эта функция может также вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
get_prev_week(date)¶ Возвращает объект даты, содержащий первый день недели перед указанной датой. Эта функция может также вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
DateMixin¶
-
class
DateMixin[исходный код]¶ Класс-миксин, обеспечивающий общее поведение для всех представлений, основанных на дате.
Методы и атрибуты
-
date_field¶ Имя
DateFieldилиDateTimeFieldв моделиQuerySet, которое архив на основе даты должен использовать для определения списка объектов для отображения на странице.Когда time zone support включен, а
date_fieldявляетсяDateTimeField, предполагается, что даты находятся в текущем часовом поясе. В противном случае набор запросов может включать объекты предыдущего или следующего дня в часовом поясе конечного пользователя.Предупреждение
В этой ситуации, если у вас реализован выбор часового пояса для каждого пользователя, один и тот же URL может показывать разный набор объектов в зависимости от часового пояса конечного пользователя. Чтобы избежать этого, следует использовать
DateFieldв качестве атрибутаdate_field.
-
allow_future¶ Булево значение, указывающее, следует ли включать «будущие» объекты на эту страницу, где «будущие» означает объекты, у которых поле, указанное в
date_field, больше, чем текущая дата/время. По умолчанию это значение равноFalse.
-
get_date_field()[исходный код]¶ Возвращает имя поля, содержащего данные о дате, с которыми будет работать это представление. По умолчанию возвращает
date_field.
-
get_allow_future()[исходный код]¶ Определяет, включать ли «будущие» объекты на эту страницу, где «будущие» означает объекты, у которых поле, указанное в
date_field, больше, чем текущая дата/время. По умолчанию возвращаетallow_future.
-
BaseDateListView¶
-
class
BaseDateListView[исходный код]¶ Базовый класс, который обеспечивает общее поведение для всех представлений, основанных на дате. Обычно нет причин для инстанцирования
BaseDateListView; вместо этого инстанцируйте один из подклассов.Во время выполнения этого представления (и его подклассов)
self.object_listбудет содержать список объектов, над которыми работает представление, аself.date_listбудет содержать список дат, для которых доступны данные.Миксины
Методы и атрибуты
-
allow_empty¶ Булево значение, указывающее, отображать ли страницу, если нет доступных объектов. Если это значение равно
Trueи нет доступных объектов, представление отобразит пустую страницу вместо того, чтобы выдать ошибку 404.Это идентично
django.views.generic.list.MultipleObjectMixin.allow_empty, за исключением значения по умолчанию, которое равноFalse.
-
date_list_period¶ Опционально Строка, определяющая период агрегирования для
date_list. Она должна быть одной из'year'(по умолчанию),'month'или'day'.
-
get_dated_items()[исходный код]¶ Возвращает 3-кортеж, содержащий (
date_list,object_list,extra_context).date_list- это список дат, для которых имеются данные.object_list- это список объектов.extra_context- это словарь контекстных данных, который будет добавлен к любым контекстным данным, предоставляемымMultipleObjectMixin.
-
get_dated_queryset(**lookup)[исходный код]¶ Возвращает кверисет, отфильтрованный с использованием аргументов запроса, определенных в
lookup. Применяет любые ограничения на кверисет, такие какallow_emptyиallow_future.
-
get_date_list_period()[исходный код]¶ Возвращает период агрегирования для
date_list. По умолчанию возвращаетdate_list_period.
-
get_date_list(queryset, date_type=None, ordering='ASC')[исходный код]¶ Возвращает список дат типа
date_type, для которыхquerysetсодержит записи. Например,get_date_list(qs, 'year')вернет список годов, для которыхqsсодержит записи. Еслиdate_typeне предоставлен, используется результатget_date_list_period(). Данныеdate_typeиorderingпередаются вQuerySet.dates().
-