Получение Для того, чтобы разрешить сериализацию недигматических объектов, установите для параметра safe значение False при вызове api - PullRequest
0 голосов
/ 21 апреля 2020

Я пытаюсь загрузить форму сериализованных данных для создания профиля пользователя. Всякий раз, когда я вызываю API для этого, я получаю сообщение об ошибке «Чтобы разрешить сериализацию объектов, не принадлежащих к диктатам, установите для параметра safe значение равным False».

API

class CustomerDetailViewset(APIView):
        # import pdb; pdb.set_trace()
    authentication_classes = []
    permission_classes = []
    #parser_classes = (MultiPartParser, FormParser)

    def post(self, request, *args, **kwargs):
        customer = get_user(request)
        if not customer:
            print(request.data)
            return JsonResponse({'invalid token'})
        data = request.data.copy()

        data['customer'] = customer.id
        customer_detail = customer.customerdetail.all().first()
        if customer_detail:
            data['id'] = customer_detail.id
        else:
            data['id'] = None
        file_serializer = CustomerDetailUploader(
            data=data, context={'request': request})
        if file_serializer.is_valid():
            print(file_serializer.validated_data)
            if customer_detail:
                file_obj = file_serializer.update(
                    customer_detail, file_serializer.validated_data)
            else:
                file_serializer.save()

            return Response(file_serializer.data, status=status.HTTP_201_CREATED)
        return Response(file_serializer.errors, status=status.HTTP_400_BAD_REQUEST)

Serailizer

class CustomerDetailUploader(serializers.ModelSerializer):

    current_selfie = Base64ImageField()
    class Meta:

        model = CustomerDetails
        fields = ('age', 'phone', 'current_selfie','customer_type','address', 'level', 'current_selfie', 'needs_help_with', 'prefered_strain_type',
                  'wants_to_feel', 'customer')
...