Основанные на дате миксины
Примечание
Все атрибуты форматирования даты в этих миксинах используют символы формата 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) -
Возвращает объект даты, содержащий первое число месяца после указанной даты. Эта функция также может вернуть
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), если ваша неделя начинается с понедельника.
-
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, которое используется архивом, основанным на дате, для определения списка объектов, отображаемых на странице.При включённой поддержке часовых поясов и
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().
-
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/5.0/ref/class-based-views/mixins-date-based/