Как подключить Swagger к проекту Django: пошаговое руководство 📝

Как подключить Swagger к проекту Django?

Для подключения Swagger к проекту Django, следуйте этим шагам:

  1. Установите пакет drf-yasg:
  2. pip install drf-yasg
  3. Добавьте 'drf_yasg' в INSTALLED_APPS в файле настроек проекта:
  4. 'drf_yasg',
  5. Настройте URL-маршруты для Swagger в файле urls.py:
  6. from django.urls import path
    from rest_framework import permissions
    from drf_yasg.views import get_schema_view
    from drf_yasg import openapi
    
    schema_view = get_schema_view(
        openapi.Info(
            title="API Documentation",
            default_version='v1',
            description="API Documentation",
        ),
        public=True,
        permission_classes=(permissions.AllowAny,),
    )
    
    urlpatterns = [
        ...
        path('swagger/', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'),
        path('redoc/', schema_view.with_ui('redoc', cache_timeout=0), name='schema-redoc'),
        ...
    ]
    

Детальный ответ

Как подключить Swagger к проекту Django

Swagger - это инструмент для документирования и тестирования API. Он помогает описать структуру вашего веб-приложения и позволяет вам взаимодействовать с ним через пользовательский интерфейс.

Чтобы подключить Swagger к вашему проекту Django, выполните следующие шаги:

Шаг 1: Установка пакета Django Rest Framework

Swagger требует наличия пакета Django Rest Framework в вашем проекте Django. Установите пакет с помощью следующей команды:

pip install djangorestframework

Шаг 2: Установка пакета Django Rest Swagger

Далее, установите пакет Django Rest Swagger, который интегрирует Swagger с Django Rest Framework. Выполните следующую команду:

pip install django-rest-swagger

Шаг 3: Настройка Django приложения

Теперь вам необходимо настроить ваше Django приложение для использования Swagger. Откройте файл settings.py вашего проекта и добавьте 'rest_framework' и 'rest_framework_swagger' в список INSTALLED_APPS:

INSTALLED_APPS = [
    ...
    'rest_framework',
    'rest_framework_swagger',
    ...
]

Шаг 4: Настройка URL маршрута

Следующим шагом является настройка URL маршрута для Swagger. В файле urls.py вашего Django приложения добавьте следующие строки кода:

from django.urls import path
from rest_framework_swagger.views import get_swagger_view

schema_view = get_swagger_view(title='API Documentation')

urlpatterns = [
    ...
    path('api-docs/', schema_view),
    ...
]

Шаг 5: Запуск сервера Django

Теперь все готово для запуска сервера Django и открытия Swagger UI в браузере. Запустите сервер с помощью следующей команды:

python manage.py runserver

Теперь вы можете открыть браузер и перейти по адресу http://localhost:8000/api-docs/ для просмотра Swagger UI.

Пример кода:

Рассмотрим пример кода для создания простого API с использованием Django Rest Framework и подключением Swagger.

from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import status

class ExampleAPIView(APIView):
    def get(self, request, format=None):
        """Эндпоинт для получения данных."""
        data = {'message': 'Привет, мир!'}
        return Response(data, status=status.HTTP_200_OK)

Это пример кода, который создает простой API эндпоинт с помощью Django Rest Framework. Аннотация ```def get(self, request, format=None):``` описывает запрос HTTP GET. Комментарий над функцией ```"""Эндпоинт для получения данных."""``` будет отображаться в Swagger UI в качестве описания эндпоинта.

Теперь, когда вы знаете, как подключить Swagger к проекту Django, вы можете документировать и тестировать свои API более удобным способом.

Видео по теме

drf-yasg автодокументирование api django rest framework - урок 12

Swagger Docs for Django Rest Framework API

Использование Swagger для создания клиента для API и применение его в WEB аппликации

Похожие статьи:

Как подключить Swagger к проекту Django: пошаговое руководство 📝