Я новичок в Django и Django REST Framework. У меня есть следующий класс serializer, который я использую для загрузки файла по другой информации. Но, в то время как я бегу API конечную точку Загруженный файл, результат что-то вроде этого:Загрузка файла базы данных Django REST, вызывающая ошибку «Неподдерживаемый тип носителя« multipart/form-data »»
HTTP 415 Unsupported Media Type
Allow: POST, OPTIONS
Content-Type: application/json
Vary: Accept
{
"detail": "Unsupported media type \"multipart/form-data; boundary=----WebKitFormBoundaryybZ07gjZAqvcsZw3\" in request."
}
Я старался прибегая к помощи, чтобы решить эту проблему, но не может выйти в растворе, так вот мой сериализатору и API.
Serializer:
class ExampleSerializer(serializers.Serializer):
example_id = serializers.IntegerField()
description = serializers.CharField(allow_blank=True)
example_file = serializers.FileField(allow_empty_file=True)
def create_requirement_line(self):
request = self.context['request']
requirement_line = ExampleService().example_method(
example_id=self.validated_data['example_id'],
description=self.validated_data['description'],
example_file=self.validated_data['example_file']
)
return requirement_line
Вид:
class RequirementLineAPIView(BaseCreateAPIView):
serializer_class = ExampleSerializer
parser_classes = (FormParser,)
def post(self, request, format=None,*args, **kwargs):
serializer = self.get_serializer(data=request.data)
if serializer.is_valid():
try:
example_variable = serializer.example_method()
return Response(example_variable, status=status.HTTP_200_OK)
except ValidationError as e:
return Response(e.message, status=status.HTTP_400_BAD_REQUEST)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Что такое, что запятая все о в строке 'parser_classes = (FormParser,)'? – kpie
Я не уверен, но если я удалю «запятую», тогда объект типа «type is is iterable' is ocurring. @kpie – RTan
Можете ли вы разместить больше своего кода? – kpie