sanchit24

Untitled

Mar 21st, 2016
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. class UserList(generics.ListCreateAPIView):
  2. """
  3. ListAPI view for get list of Users and create User instance
  4. """
  5. queryset = UserProfile.objects.all()
  6. model = UserProfile
  7. serializer_class = UserSerializer
  8. paginate_by = 10
  9. permission_classes = (IsAuthenticated, IsAdminUser,)
  10.  
  11. def get_queryset(self):
  12. """
  13. Method to get query params and return search results for User
  14. :return: Search Result
  15. """
  16. queryset = UserProfile.objects.all()
  17. search_query = self.request.query_params.get('user', None)
  18.  
  19. if search_query is not None:
  20. queryset = queryset.filter(username__istartswith=search_query)
  21. queryset = queryset.order_by('username')
  22. return queryset
  23.  
  24.  
  25. class UserDetail(generics.RetrieveUpdateAPIView):
  26. """
  27. Class based API view to Retrieve, Update a User instance
  28. """
  29. queryset = UserProfile.objects.all()
  30. model = UserProfile
  31. serializer_class = UserSerializer
  32. permission_classes = (IsAuthenticated, UserIsOwnerOrAdmin,)
  33.  
  34.  
  35. class UserDelete(generics.DestroyAPIView):
  36.  
  37. queryset = UserProfile.objects.all()
  38. model = UserProfile
  39. serializer_class = UserSerializer
  40. permission_classes = (IsAuthenticated, IsAdminUser,)
Add Comment
Please, Sign In to add comment