Основанные на дате миксины
Примечание
Все атрибуты форматирования дат в этих миксинах используют символы формата 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 -
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 -
Имя поля даты или времени в модели, которое представление должно использовать для определения списка объектов, отображаемых на странице.
При включенной поддержке часовых поясов и если поле
date_fieldявляется датой или временем, даты предполагаются в текущем часовом поясе. В противном случае набор объектов запроса может включать объекты из предыдущего или следующего дня в часовом поясе конечного пользователя.Предупреждение
В этой ситуации, если вы реализовали выбор часового пояса для каждого пользователя, один и тот же 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будет содержать список дат, для которых доступны данные.Mixins
Методы и атрибуты
-
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/4.0/ref/class-based-views/mixins-date-based/