Skip to content

Commit 39f25cb

Browse files
committed
Add current user route, refactor views names
1 parent 23ad161 commit 39f25cb

2 files changed

Lines changed: 19 additions & 18 deletions

File tree

users/urls.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
from django.urls import path, re_path
22

33
from users.views import (
4+
CurrentUser,
45
EmailResetPassword,
56
ResetPassword,
67
SpecialistsList,
7-
UserAdditionalRolesView,
8+
UserAdditionalRoles,
89
UserDetail,
910
UserList,
10-
UserTypesView,
11-
VerifyEmail,
1211
UserTypes,
12+
VerifyEmail,
1313
)
1414

1515
app_name = "users"
@@ -19,11 +19,11 @@
1919
"specialists/", SpecialistsList.as_view()
2020
), # this url actually returns mentors, experts and investors
2121
path("users/", UserList.as_view()),
22-
path("users/roles/", UserAdditionalRolesView.as_view()),
23-
path("users/types/", UserTypesView.as_view()),
22+
path("users/roles/", UserAdditionalRoles.as_view()),
23+
path("users/types/", UserTypes.as_view()),
2424
path("users/<int:pk>/", UserDetail.as_view()),
2525
path("users/reset-password/", EmailResetPassword.as_view()),
26-
path("users/user-types", UserTypes.as_view()),
26+
path("users/current/", CurrentUser.as_view()),
2727
re_path(
2828
r"^account-confirm-email/",
2929
VerifyEmail.as_view(),

users/views.py

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
from core.permissions import IsOwnerOrReadOnly
2525
from core.utils import Email
26-
from users.helpers import VERBOSE_ROLE_TYPES, VERBOSE_USER_TYPES
26+
from users.helpers import VERBOSE_ROLE_TYPES
2727
from users.serializers import (
2828
EmailSerializer,
2929
PasswordSerializer,
@@ -73,17 +73,7 @@ def post(self, request, *args, **kwargs):
7373
return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers)
7474

7575

76-
class UserTypesView(GenericAPIView):
77-
permission_classes = [AllowAny]
78-
79-
def get(self, request, format=None):
80-
"""
81-
Return a tuple of user types.
82-
"""
83-
return Response(VERBOSE_USER_TYPES, status=status.HTTP_200_OK)
84-
85-
86-
class UserAdditionalRolesView(GenericAPIView):
76+
class UserAdditionalRoles(GenericAPIView):
8777
permission_classes = [AllowAny]
8878

8979
def get(self, request, format=None):
@@ -111,6 +101,17 @@ class UserDetail(RetrieveUpdateDestroyAPIView):
111101
serializer_class = UserDetailSerializer
112102

113103

104+
class CurrentUser(APIView):
105+
queryset = User.objects.get_users_for_detail_view()
106+
permission_classes = [IsAuthenticated]
107+
serializer_class = UserDetailSerializer
108+
109+
def get(self, request):
110+
user = request.user
111+
serializer = UserDetailSerializer(user)
112+
return Response(serializer.data, status=status.HTTP_200_OK)
113+
114+
114115
class UserTypes(APIView):
115116
def get(self, request, format=None):
116117
"""

0 commit comments

Comments
 (0)