РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
117 of 818 menu

Лукап week_day

Лукап week_day применяется к полям типа DateField и DateTimeField для фильтрации записей по дню недели. Этот лукап позволяет выбирать объекты, у которых дата или дата-время попадают на определенный день недели. Значения передаются в виде целых чисел от 1 до 7, где 1 - воскресенье, 2 - понедельник, и так далее до 7 - суббота. Также можно использовать строковые представления дней недели на английском языке.

Синтаксис

Model.objects.filter(field_name__week_day=value)

Пример

Давайте отфильтруем события, которые запланированы на понедельник (день недели 2):

from myapp.models import Event monday_events = Event.objects.filter(date__week_day=2) for event in monday_events: print(event.title)

Результат выполнения кода:

"Team meeting" "Project presentation"

Пример

Давайте отфильтруем заказы, которые были созданы в пятницу (день недели 6) в текущем году:

from myapp.models import Order from datetime import date current_year = date.today().year friday_orders = Order.objects.filter( created_at__year=current_year, created_at__week_day=6 ) for order in friday_orders: print(order.id)

Результат выполнения кода:

101 103 107 112

Пример

Давайте отфильтруем статьи, которые были опубликованы в воскресенье (день недели 1) или субботу (день недели 7):

from myapp.models import Article from django.db.models import Q weekend_articles = Article.objects.filter( Q(published_at__week_day=1) | Q(published_at__week_day=7) ) for article in weekend_articles: print(article.title)

Результат выполнения кода:

"Weekend reading" "Sunday special" "Saturday review"

Пример

Давайте отфильтруем задачи, которые запланированы на среду (день недели 4) и имеют статус "active":

from myapp.models import Task wednesday_tasks = Task.objects.filter( due_date__week_day=4, status='active' ) for task in wednesday_tasks: print(task.name)

Результат выполнения кода:

"Review pull requests" "Update documentation" "Team sync meeting"

Смотрите также

  • лукап year,
    который фильтрует записи по году
  • лукап month,
    который фильтрует записи по месяцу
  • лукап day,
    который фильтрует записи по дню месяца
  • лукап week,
    который фильтрует записи по неделе года
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить