diff --git a/core/serializers/__init__.py b/core/serializers/__init__.py index 7e38070b..96f2fe80 100644 --- a/core/serializers/__init__.py +++ b/core/serializers/__init__.py @@ -171,7 +171,11 @@ class AddressCreateSerializer(ModelSerializer): # noqa: F405 class Meta: model = Address - fields = ["raw_data"] + fields = [ + "raw_data", + "address_line_1", + "address_line_2" + ] def create(self, validated_data): raw = validated_data.pop("raw_data") diff --git a/vibes_auth/viewsets.py b/vibes_auth/viewsets.py index 86a8a81b..7f3739b3 100644 --- a/vibes_auth/viewsets.py +++ b/vibes_auth/viewsets.py @@ -86,7 +86,10 @@ class UserViewSet( return Response({"message": _("password reset successfully")}, status=status.HTTP_200_OK) except (TypeError, ValueError, OverflowError, User.DoesNotExist) as e: - return Response({"error": str(e)}, status=status.HTTP_400_BAD_REQUEST) + data = {"error": str(e)} + if DEBUG: + data["detail"] = str(traceback.format_exc()) + return Response(data, status=status.HTTP_400_BAD_REQUEST) @method_decorator(ratelimit(key="ip", rate="3/h" if not DEBUG else "888/h")) def create(self, request, *args, **kwargs): @@ -142,6 +145,9 @@ class UserViewSet( return Response(serializer.data) def update(self, request, pk=None, *args, **kwargs): + instance = self.get_object() + serializer = self.get_serializer(instance) + instance = serializer.update(instance=self.get_object(), validated_data=request.data) return Response( - self.get_serializer(self.get_object()).update(instance=self.get_object(), validated_data=request.data).data + self.get_serializer(instance.data) )