A Profile to make Detailed changes in Django Rest-Framework API. I have created Serializered File and View file but Detail is not saved
Actually, I am working on a project and I have to modify the authentication system so that I am able to log in using username and password. I have Login Successfully and I have Change Detail but Don't Change Detail. Please Solve This Code and give me a Code.
My serializrs.py
class ProfileSerializer(serializers.ModelSerializer):
class Meta:
model = CustomUser
fields = ("first_name", )
def create(self, validated_data):
user_id = Token.objects.get(key=validated_data.auth.key).user_id
user = User.objects.get(id=user_id)
first_name = validated_data.get('first_name')
user.first_name = first_name
user.save()
return user
My views.py
class ProfileAPIView(APIView):
serializer_class = ProfileSerializer
permission_classes = [permissions.AllowAny]
authentication_classes = [TokenAuthentication]
def post(self, request):
serializer = ProfileSerializer(data=request.data)
if serializer.is_valid(raise_exception=True):
return Response({"msg":"Profile Update"}, status=status.HTTP_200_OK)
return Response(serializer.errors, status=status.HTTP_401_UNAUTHORIZED)
Solve this Serialize File And View File and Give me a Code.
class ProfileAPIView(APIView):
serializer_class = ProfileSerializer
permission_classes = [permissions.AllowAny]
authentication_classes = [TokenAuthentication]
def post(self, request):
serializer = ProfileSerializer(data=request.data)
if serializer.is_valid(raise_exception=True):
user_id = Token.objects.get(key=request.auth.key).user_id
user = User.objects.get(id=user_id)
first_name=serializer.data.get('first_name')
user.first_name=first_name
user.save()
return Response({"msg":"Profile Update"}, status=status.HTTP_200_OK)
return Response(serializer.errors, status=status.HTTP_401_UNAUTHORIZED)
0
class updateAPIView(APIView):
serializer_class = updateSerializer
permission_classes = [permissions.AllowAny]
authentication_classes = [TokenAuthentication]
def post(self, request):
serializer = updateSerializer(data=request.data)
if serializer.is_valid(raise_exception=True):
user_id = Token.objects.get(key=request.auth.key).user_id
user = User.objects.get(id=user_id)
first_name=serializer.data.get('first_name')
user.first_name=first_name
user.save()
return Response({"msg":"Profile Update"}, status=status.HTTP_200_OK)
return Response(serializer.errors, status=status.HTTP_401_UNAUTHORIZED)