Основанные на дате миксины
Примечание
Все атрибуты форматирования даты в этих миксинах используют символы формата 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 -
Mixin, который можно использовать для извлечения и предоставления информации для разбора компонента дня даты.
Методы и атрибуты
-
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 -
Mixin, который можно использовать для извлечения и предоставления информации для разбора компонента недели даты.
Методы и атрибуты
-
week_format -
Формат
strftime()для использования при разборе недели. По умолчанию это'%U', что означает, что неделя начинается с воскресенья. Установите ее на'%W'или'%V'(неделя ISO 8601), если ваша неделя начинается с понедельника.Добавлено в 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 -
Класс mixin, предоставляющий общее поведение для всех страниц, основанных на дате.
Методы и атрибуты
-
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/3.2/ref/class-based-views/mixins-date-based/