Django - Добавьте swagger auto schema к функциям с метками DRF с помощью `@api_view`.
Django - Как добавить swagger auto schema к DRF-функциям с метками @api_view
?
У меня есть эта функция
view.py
@api_view(['POST'])
@swagger_auto_schema(
request_body=PostSerializer,
operation_description="Create a post object"
)
def post_create_post(request):
Но требования к данным тела запроса не отображаются в Swagger UI. Как добавить документацию swagger к конечным точкам, созданным с помощью
@api_view
?
Выдача заказа
@swagger_auto_schema(
method='post',
request_body=PostSerializer,
operation_description="Create a post object"
)
@api_view(['POST'])
def post_create_post(request):
вам также необходимо добавить параметр method
к @swagger_auto_schema
Декораторы применяются в первую очередь к тем, которые "ближе всего" к определению функции. Чтобы использовать декоратор @swagger_auto_schema
, сначала должен быть применен декоратор @api_view
.
Следовательно, исправленная версия такова:
@swagger_auto_schema(
request_body=PostSerializer,
operation_description="Create a post object"
)
@api_view(['POST'])
def post_create_post(request):
Редакция: в другом ответе говорится:
вам также необходимо добавить параметр метода к @swagger_auto_schema
.
Однако, для маршрутов, которые имеют только один метод, нет необходимости указывать его, так как он будет принят за вас, по крайней мере, в текущей версии библиотеки drf_yasg.