📝 Задания — Урок 38
⚡ Вопросы из лекции
5 вопросов на проверку знания классов пагинации и конфигурации LOGGING. Ответы — в решениях.
Вопросы для закрепления
Задания из лекции. Ответы — в решениях.
Вопрос 1: Классы пагинации
Сопоставьте классы пагинации с их характеристиками:
- LimitOffsetPagination
- CursorPagination
- PageNumberPagination
Характеристики:
- a) Пагинация с использованием номера страницы и размера страницы.
- b) Пагинация с использованием параметров limit и offset.
- c) Пагинация с использованием курсора для стабильной навигации.
Вопрос 2: page_size_query_param
Какой параметр позволяет клиентам указывать размер страницы через запрос при использовании PageNumberPagination?
- a)
page_size_query_param - b)
ordering - c)
search_fields - d)
default_limit
Вопрос 3: Глобальная пагинация
Какие параметры нужно добавить в settings.py, чтобы использовать LimitOffsetPagination глобально в проекте?
- a)
DEFAULT_PAGINATION_CLASSиPAGE_SIZE - b)
DEFAULT_FILTER_BACKENDиDEFAULT_PAGE_SIZE - c)
DEFAULT_CURSORиDEFAULT_PAGE_NUMBER - d)
DEFAULT_ORDERINGиDEFAULT_LIMIT
Вопрос 4: Класс FileHandler
Какой класс используется для записи логов в файл в настройках логирования Django?
- a)
FileLogHandler - b)
StreamLogHandler - c)
FileHandler - d)
StreamHandler
Вопрос 5: Уровень логирования SQL
Какой уровень логирования следует использовать для записи всех SQL-запросов?
- a)
INFO - b)
DEBUG - c)
WARNING - d)
ERROR
Вопрос 6 (практический): Напишите код
Настройте CursorPagination глобально для проекта. Условия:
- Не более 6 объектов на странице
- Поле сортировки —
created_at - Кастомный класс в файле
myapp/pagination.py
Напишите содержимое pagination.py и соответствующий блок REST_FRAMEWORK в settings.py.