Mixin-ы, основанные на датах
Примечание
Все атрибуты форматирования дат в этих миксинах используют символы формата strftime(). Не пытайтесь использовать символы формата из тега шаблона now, так как они несовместимы.
YearMixin
-
class YearMixin[source] -
Mixin, который может использоваться для извлечения и обработки информации о компоненте года даты.
Методы и атрибуты
-
year_format -
Формат
strftime()для разбора года. По умолчанию, это'%Y'.
-
year -
Необязательно Значение года в виде строки. По умолчанию установлено в
None, что означает, что год будет определён другими способами.
-
get_year_format()[source] -
Возвращает формат
strftime()для разбора года. По умолчанию возвращаетyear_format.
-
get_year()[source] -
Возвращает год, для которого этот вид отобразит данные, в виде строки. Поочерёдно пытается получить из следующих источников:
- Значение атрибута
YearMixin.year. - Значение аргумента
year, полученного из шаблона URL. - Значение аргумента запроса
yearGET.
Возбуждает 404, если не найдено корректное значение года.
- Значение атрибута
-
get_next_year(date)[source] -
Возвращает объект даты, содержащий первый день года после указанной даты. Эта функция также может вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
get_previous_year(date)[source] -
Возвращает объект даты, содержащий первый день года перед указанной датой. Эта функция также может вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
MonthMixin
-
class MonthMixin[source] -
Mixin, который может использоваться для извлечения и обработки информации о компоненте месяца даты.
Методы и атрибуты
-
month_format -
Формат
strftime()для разбора месяца. По умолчанию, это'%b'.
-
month -
Необязательно Значение месяца в виде строки. По умолчанию установлено в
None, что означает, что месяц будет определён другими способами.
-
get_month_format()[source] -
Возвращает формат
strftime()для разбора месяца. По умолчанию возвращаетmonth_format.
-
get_month()[source] -
Возвращает месяц, для которого этот вид отобразит данные, в виде строки. Поочерёдно пытается получить из следующих источников:
- Значение атрибута
MonthMixin.month. - Значение аргумента
month, полученного из шаблона URL. - Значение аргумента запроса
monthGET.
Возбуждает 404, если не найдено корректное значение месяца.
- Значение атрибута
-
get_next_month(date)[source] -
Возвращает объект даты, содержащий первый день месяца после указанной даты. Эта функция также может вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
get_previous_month(date)[source] -
Возвращает объект даты, содержащий первый день месяца перед указанной датой. Эта функция также может вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
DayMixin
-
class DayMixin[source] -
Mixin, используемый для извлечения и обработки информации о дне даты.
Методы и атрибуты
-
day_format -
Формат
strftime()для парсинга дня. По умолчанию, это'%d'.
-
day -
Необязательно Значение дня в виде строки. По умолчанию, установлено на
None, что означает, что день будет определён другими способами.
-
get_day_format()[source] -
Возвращает формат
strftime()для парсинга дня. По умолчанию возвращаетday_format.
-
get_day()[source] -
Возвращает день, для которого этот вид отображает данные, в виде строки. Попытка извлечения из:
- Значения атрибута
DayMixin.day. - Значения аргумента
day, полученного из шаблона URL. - Значения аргумента запроса
dayGET.
Возникает исключение 404, если не удаётся найти допустимое значение дня.
- Значения атрибута
-
get_next_day(date)[source] -
Возвращает объект даты, содержащий следующий допустимый день после указанной даты. Функция также может вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
get_previous_day(date)[source] -
Возвращает объект даты, содержащий предыдущий допустимый день. Функция также может вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
WeekMixin
-
class WeekMixin[source] -
Mixin, используемый для извлечения и обработки информации о неделе даты.
Методы и атрибуты
-
week_format -
Формат
strftime()для парсинга недели. По умолчанию, это'%U', что означает, что неделя начинается с воскресенья. Установите его в'%W'или'%V'(ISO 8601 неделя), если ваша неделя начинается с понедельника.
-
week -
Необязательно Значение недели в виде строки. По умолчанию, установлено на
None, что означает, что неделя будет определена другими способами.
-
get_week_format()[source] -
Возвращает формат
strftime()для парсинга недели. По умолчанию возвращаетweek_format.
-
get_week()[source] -
Возвращает номер недели, для которой этот вид отображает данные, в виде строки. Попытка извлечения из:
- Значения атрибута
WeekMixin.week. - Значения аргумента
weekиз шаблона URL. - Значения аргумента запроса
weekGET.
Возникает исключение 404, если не удаётся найти допустимое значение недели.
- Значения атрибута
-
get_next_week(date)[source] -
Возвращает объект даты, содержащий первый день недели после указанной даты. Функция также может вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
get_prev_week(date) -
Возвращает объект даты, содержащий первый день недели до указанной даты. Функция также может вернуть
Noneили вызвать исключениеHttp404, в зависимости от значенийallow_emptyиallow_future.
-
DateMixin
-
class DateMixin[source] -
Класс-миксин, обеспечивающий общее поведение для всех представлений, основанных на датах.
Методы и атрибуты
-
date_field -
Имя поля
DateFieldилиDateTimeFieldв моделиQuerySet, которое представление, основанное на дате, должно использовать для определения списка объектов, которые нужно отобразить на странице.При включенной поддержке часовых поясов и если поле
date_fieldявляется полемDateTimeField, даты предполагаются в текущем часовом поясе. В противном случае набор запросов может включать объекты с предыдущего или следующего дня в часовом поясе конечного пользователя.Предупреждение
В этой ситуации, если вы реализовали выбор часового пояса для каждого пользователя, один и тот же URL может отображать разные наборы объектов в зависимости от часового пояса конечного пользователя. Чтобы избежать этого, следует использовать поле
DateFieldв качестве атрибутаdate_field.
-
allow_future -
Логическое значение, указывающее, следует ли включать объекты «будущего» на этой странице, где «будущее» означает объекты, у которых поле, указанное в
date_field, больше текущей даты/времени. По умолчанию это значение равноFalse.
-
get_date_field()[source] -
Возвращает имя поля, содержащего данные даты, на которых будет работать это представление. По умолчанию возвращает
date_field.
-
get_allow_future()[source] -
Определяет, следует ли включать объекты «будущего» на этой странице, где «будущее» означает объекты, у которых поле, указанное в
date_field, больше текущей даты/времени. По умолчанию возвращаетallow_future.
-
BaseDateListView
-
class BaseDateListView[source] -
Базовый класс, обеспечивающий общее поведение для всех представлений, основанных на датах. Обычно нет причины для создания экземпляра
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()[source] -
Возвращает кортеж из 3 элементов, содержащий (
date_list,object_list,extra_context).date_list— список дат, для которых доступны данные.object_list— список объектов.extra_context— словарь данных контекста, который будет добавлен к любым данным контекста, предоставляемымMultipleObjectMixin.
-
get_dated_queryset(**lookup)[source] -
Возвращает набор запросов, отфильтрованный с использованием параметров запроса, определенных в
lookup. Применяет любые ограничения к набору запросов, такие какallow_emptyиallow_future.
-
get_date_list_period()[source] -
Возвращает период агрегации для
date_list. По умолчанию возвращаетdate_list_period.
-
get_date_list(queryset, date_type=None, ordering='ASC')[source] -
Возвращает список дат типа
date_type, для которыхquerysetсодержит записи. Например,get_date_list(qs, 'year')вернет список лет, для которыхqsсодержит записи. Еслиdate_typeне указано, используется результатget_date_list_period().date_typeиorderingпередаются вQuerySet.dates().
-
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/5.2/ref/class-based-views/mixins-date-based/