Привет, я новичок в Django REST и учился через онлайн-видео. Я пытаюсь построить REST API и определяю POST с помощью сериализатора. В соответствии с инструкциями в видео я использовал serializers.CharField для поля ввода имени теста, но я получаю mediatype и контент как в прикрепленном изображении.
Views.py:
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import status
from profiles_api import serializers
class HelloApiView(APIView):
"""Test API View"""
serializers_class = serializers.HelloSerializer
def get(self, request, format=None):
"""Return a list of APIView features"""
an_apiview = [
'Uses HTTP methods as function(get, post, put, patch, delete)',
'Is similar to a traditional Django View',
'Gives you most conrtol over you application logic',
'Is maaped manually to URLs'
]
return Response({'message':'Hello!','an_apiview':an_apiview})
def post(self, request):
"""Create a hello message with our name"""
serializer = self.serializers_class(data=request.data)
if serializer.is_valid():
name = serializer.validated_data.get('name')
message = f'Hello {name}'
return Response({'message' : message})
else:
return Response(
serializer.errors,
status=status.HTTP_400_BAD_REQUEST
)
serializers.py:
from rest_framework import serializers
class HelloSerializer(serializers.Serializer):
"""Serializers a name field for testing our APIView"""
name = serializers.CharField(max_length=10)
age = serializers.DecimalField(max_digits=10,decimal_places=2)
![MediaType and content instead of Name field](https://i.stack.imgur.com/VWTI5.png)