Swagger
Для того чтобы создать Swagger документацию, воспользуемся библиотекой drf-spectacular.
Мы уже настроили эту библиотеку ранее здесь, а также указали нужные маршруты здесь. Этого достаточно, чтобы документация заработала и показывала информацию о наших эндопоинтах.
Но, к сожалению, отображаемся информация не всегда соответствует реальности, поэтому нам нужно расширить некоторые схемы
с помощью декоратора @extend_schema на методах наших представлений и с помощью Docstring там, где повесить декоратор
не так просто.
Декоратор принимает несколько аргументов:
summary- то, что будет отображаться рядом с URL эндпоинта;description- то, что будет написано в описании эндпоинта. Вместо этого аргумента можно использовать Docstring;parameters- схемы для входных данных. Указываются списком объектов классаOpenApiParameterс названием параметра и его типом;responses- словарь, где ключ - статус ответа, а значение - сериализатор. Можно как использовать готовые сериализаторы, так и написать сериализатор на месте с помощьюinline_serializer.
Код для декораторов уже был представлен здесь, дублировать информацию не буду.
Полученная документация:








