📝 Задания: Django ORM запросы

К оглавлению урока | Решения →

⚡ Список заданий

  • Блок А: Менеджеры и создание (3 вопроса)
  • Блок Б: Чтение записей (3 вопроса)
  • Блок В: Метод get() (1 вопрос)
  • Блок Г: Lookups и фильтры (5 вопросов)
  • Блок Д: Класс Q (1 вопрос)
Задания из лекции Django_19. Выберите правильный ответ, затем проверьте себя на странице Решения.

Блок А. Менеджеры и создание записей

Задание А-1

Какой метод используется для создания и сохранения новой записи в БД одним действием?

  1. save()
  2. create()
  3. add()
  4. insert()

Задание А-2

Какой менеджер Django предоставляется всем моделям по умолчанию?

  1. manager
  2. db
  3. objects
  4. query

Задание А-3

Какой метод позволяет создать объект, изменить его и только потом сохранить?

  1. create()
  2. write()
  3. persist()
  4. save()

Блок Б. Чтение записей

Задание Б-1

Какой метод возвращает первую запись из QuerySet?

  1. first()
  2. get()
  3. initial()
  4. fetch()

Задание Б-2

Какой метод используется для проверки существования хотя бы одной записи в QuerySet?

  1. count()
  2. exists()
  3. any()
  4. check()

Задание Б-3

Сопоставьте методы и их описание:

МетодОписание
a) values()1) Возвращает последнюю запись из QuerySet
b) last()2) Возвращает количество записей в QuerySet
c) all()3) Возвращает записи как словари поле-значение
d) count()4) Возвращает все записи таблицы как QuerySet

Блок В. Метод get()

Задание В-1

Что произойдёт, если get() не найдёт ни одной записи в базе данных?

  1. Выбросит исключение MultipleObjectsReturned
  2. Выбросит исключение DoesNotExist
  3. Вернёт None
  4. Вернёт пустой QuerySet

Блок Г. Lookups и фильтры

Задание Г-1

Какое условие фильтрации используется для проверки, начинается ли значение поля с заданной подстроки?

  1. startswith
  2. beginswith
  3. startwith
  4. beginwith

Задание Г-2

Какое условие фильтрации используется для проверки, находится ли значение поля в заданном диапазоне?

  1. inside
  2. within
  3. between
  4. range

Задание Г-3

Какое условие используется для регистронезависимого точного совпадения?

  1. case_insensitive
  2. exact_ignore_case
  3. iexact
  4. iexactly

Задание Г-4

Сопоставьте lookups и их описание:

LookupОписание
a) icontains1) Проверяет, отсутствует ли значение поля (IS NULL)
b) in2) Содержит ли поле подстроку без учёта регистра
c) isnull3) Содержит ли поле подстроку с учётом регистра
d) contains4) Находится ли значение в заданном списке

Задание Г-5 (практика)

Напишите запрос, который выбирает все книги, опубликованные между 2010 и 2020 годами включительно. Используйте lookup __range.

Блок Д. Класс Q

Задание Д-1

Какой класс используется для построения сложных фильтров с логическими операторами AND, OR, NOT?

  1. Query
  2. Q
  3. Filter
  4. Condition