From 3fa70d9436aae1193ccdefe409652bc7acf60fa0 Mon Sep 17 00:00:00 2001 From: xoliqberdiyev Date: Thu, 16 Apr 2026 15:26:47 +0500 Subject: [PATCH] add base url --- core/apps/accounts/serializers/user.py | 8 ++++++++ core/apps/accounts/views/auth.py | 5 ++--- core/apps/accounts/views/user.py | 3 +++ 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/core/apps/accounts/serializers/user.py b/core/apps/accounts/serializers/user.py index f2ffb17..4f3276e 100644 --- a/core/apps/accounts/serializers/user.py +++ b/core/apps/accounts/serializers/user.py @@ -3,6 +3,8 @@ from rest_framework import serializers class UserSerializer(serializers.ModelSerializer): + avatar = serializers.SerializerMethodField(method_name='get_avatar') + class Meta: exclude = [ "created_at", @@ -13,6 +15,12 @@ class UserSerializer(serializers.ModelSerializer): ] model = get_user_model() + def get_avatar(self, obj): + request = self.context.get('request') + if obj.avatar: + return request.build_absolute_uri(obj.avatar.url) + return None + class UserUpdateSerializer(serializers.ModelSerializer): class Meta: diff --git a/core/apps/accounts/views/auth.py b/core/apps/accounts/views/auth.py index 728bfb7..c01a2ce 100644 --- a/core/apps/accounts/views/auth.py +++ b/core/apps/accounts/views/auth.py @@ -177,12 +177,11 @@ class MeView(BaseViewSetMixin, GenericViewSet, UserService): @action(methods=["GET", "OPTIONS"], detail=False, url_path="me") def me(self, request): - print(request.user.role) - return Response(UserSerializer(request.user).data) + return Response(UserSerializer(request.user, context={"request": request}).data) @action(methods=["PATCH", "PUT"], detail=False, url_path="user-update") def user_update(self, request): - ser = self.get_serializer(instance=request.user, data=request.data, partial=True) + ser = self.get_serializer(instance=request.user, data=request.data, partial=True, context={"request": request}) ser.is_valid(raise_exception=True) data = ser.save() return Response(UserSerializer(data).data) diff --git a/core/apps/accounts/views/user.py b/core/apps/accounts/views/user.py index bc6e70e..f9d4b9e 100644 --- a/core/apps/accounts/views/user.py +++ b/core/apps/accounts/views/user.py @@ -18,6 +18,9 @@ class UserListApiView(generics.ListAPIView): filter_backends = [filters.SearchFilter] search_fields = ['phone', 'first_name', 'last_name'] + def serializer_context(self): + return self.serializer_class(context={"request": self.request}) + @extend_schema(tags=['User']) class AdminUserListApiView(generics.ListAPIView): -- 2.49.1