diff --git a/StockSeeker/serializers.py b/StockSeeker/serializers.py index b636c8f..8c00baf 100644 --- a/StockSeeker/serializers.py +++ b/StockSeeker/serializers.py @@ -15,6 +15,14 @@ class UserSerializer(serializers.ModelSerializer): raise serializers.ValidationError("Cette adresse e-mail est déjà utilisée.") return value + def update(self, instance, validated_data): + if 'password' in validated_data: + instance.set_password(validated_data.pop('password')) + for attr, value in validated_data.items(): + setattr(instance, attr, value) + instance.save() + return instance + def create(self, validated_data): password = validated_data.pop("password") user = User(**validated_data) diff --git a/StockSeeker/views.py b/StockSeeker/views.py index 2d01355..71e3500 100644 --- a/StockSeeker/views.py +++ b/StockSeeker/views.py @@ -33,7 +33,7 @@ class CreateUser(generics.CreateAPIView): }, status=status.HTTP_201_CREATED) -class UserInfo(generics.RetrieveAPIView): +class UserInfo(generics.RetrieveUpdateAPIView): permission_classes = [IsAuthenticated] serializer_class = UserSerializer