From 530fd6de084c42ba82429306ddcc55e5a143c619 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o?= Date: Wed, 15 Jan 2025 16:11:35 +0100 Subject: [PATCH] update user information --- StockSeeker/serializers.py | 8 ++++++++ StockSeeker/views.py | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) 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