Профиль для внесения детальных изменений в Django Rest-Framework API. Я создал Serializered File и View файл, но детали не сохраняются
На самом деле, я работаю над проектом, и мне нужно изменить систему аутентификации, чтобы я мог войти в систему, используя имя пользователя и пароль. Я успешно вошел в систему и изменил детали, но не изменил детали. Пожалуйста, решите этот код и дайте мне код.
Мой 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
Мой 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)
Решите эту проблему с Serialize File и View File и дайте мне код.
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)