Reputation: 325
used django 2.0.2 MAC OS 10.13
views.py
from rest_framework import viewsets
from .serializers import RegisterSerializer
from rest_framework.response import Response
import json
class RegisterViewSet(viewsets.ModelViewSet):
queryset = ''
serializer_class = RegisterSerializer
def create(self,request, *args, **kwargs):
print(json.loads(request.body))
serializer_class = RegisterSerializer(json.loads(request.body))
return Response(serializer_class)
serializers.py
from rest_framework import serializers
from .models import register
import uuid
class RegisterSerializer(serializers.Serializer):
UserEmail = serializers.EmailField(allow_blank=True,default=uuid.uuid4())
UserPassword = serializers.CharField(allow_blank=True,default=uuid.uuid4())
UserSex = serializers.IntegerField(default=0)
UserAge = serializers.IntegerField(default=0)
DeviceId = serializers.CharField(allow_blank=True,default=uuid.uuid4())
PushKey = serializers.CharField(allow_blank=True,default=uuid.uuid4())
OS = serializers.IntegerField(default=0)
OSVersion = serializers.CharField(allow_blank=True,default=0)
def create(self,validated_date):
return True
api test.html enter image description here
i input this value
succese print(json.loads(request.body))
how to use this value at serializer
after
raise this exception
You passed a Serializer instance as data, but probably meant to pass serialized `.data` or `.error`. representation.
Upvotes: 0
Views: 1281
Reputation: 5357
Change this line
return Response(serializer_class)
to
return Response(serializer_class.data)
Upvotes: 2