detailed user api
This commit is contained in:
parent
ca4a46a668
commit
5faac7e63d
2 changed files with 15 additions and 4 deletions
|
|
@ -1,7 +1,8 @@
|
|||
from django.urls import path
|
||||
from django.contrib.auth.views import LogoutView
|
||||
from .views import UserListView, UserDetailView, AccountView, RequestOTPView, ChangePasswordView, \
|
||||
OTPLoginView, ProfileDetailView, ProfileUpdateView, RequestOTTView, UserCurrentAvatarUrlView, UserInquiryView
|
||||
from .views import UserListView, UserPublicRetrieveView, AccountView, RequestOTPView, ChangePasswordView, \
|
||||
OTPLoginView, ProfileDetailView, ProfileUpdateView, RequestOTTView, UserCurrentAvatarUrlView, UserInquiryView, \
|
||||
UserDetailedRetrieveView
|
||||
|
||||
app_name = "users"
|
||||
|
||||
|
|
@ -12,8 +13,9 @@ urlpatterns = [
|
|||
path('account/update/', ProfileUpdateView.as_view(), name='account_update'),
|
||||
path('api/account/', AccountView.as_view(), name='account_api'),
|
||||
path('api/users/', UserListView.as_view(), name='user_list_api'),
|
||||
path('api/users/<uuid>/', UserDetailView.as_view(), name='user_detail_api'),
|
||||
path('api/users/<uuid>/', UserPublicRetrieveView.as_view(), name='user_public_retrieve_api'),
|
||||
path('api/users/<uuid>/avatar', UserCurrentAvatarUrlView.as_view(), name='user_avatar_api'),
|
||||
path('api/users/<uuid>/details', UserDetailedRetrieveView.as_view(), name='user_detailed_retrieve_api'),
|
||||
path('api/request_otp/', RequestOTPView.as_view(), name='request_otp_api'),
|
||||
path('api/request_ott/', RequestOTTView.as_view(), name='request_ott_api'),
|
||||
path('api/change_password/', ChangePasswordView.as_view(), name='change_password_api'),
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ class UserListView(generics.ListAPIView):
|
|||
}
|
||||
|
||||
|
||||
class UserDetailView(generics.RetrieveAPIView):
|
||||
class UserPublicRetrieveView(generics.RetrieveAPIView):
|
||||
permission_classes = [IsAuthenticatedOrTokenMatchesOASRequirements]
|
||||
queryset = User.objects.all()
|
||||
serializer_class = PublicUserSerializer
|
||||
|
|
@ -41,6 +41,15 @@ class UserDetailView(generics.RetrieveAPIView):
|
|||
"GET": [["accounts.profile:retrieve"]],
|
||||
}
|
||||
|
||||
class UserDetailedRetrieveView(generics.RetrieveAPIView):
|
||||
permission_classes = [IsAuthenticatedOrTokenMatchesOASRequirements]
|
||||
queryset = User.objects.all()
|
||||
serializer_class = AccountSerializer
|
||||
lookup_field = 'uuid'
|
||||
required_alternate_scopes = {
|
||||
"GET": [["accounts.profile:detailed_retrieve"]],
|
||||
}
|
||||
|
||||
class UserCurrentAvatarUrlView(generics.RetrieveAPIView):
|
||||
permission_classes = [AllowAny]
|
||||
queryset = User.objects.all()
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue