mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	API refactoring
This commit is contained in:
		| @@ -18,6 +18,7 @@ from django_q.tasks import async_task | |||||||
| from rest_framework import parsers | from rest_framework import parsers | ||||||
| from rest_framework.decorators import action | from rest_framework.decorators import action | ||||||
| from rest_framework.filters import OrderingFilter, SearchFilter | from rest_framework.filters import OrderingFilter, SearchFilter | ||||||
|  | from rest_framework.generics import GenericAPIView | ||||||
| from rest_framework.mixins import ( | from rest_framework.mixins import ( | ||||||
|     DestroyModelMixin, |     DestroyModelMixin, | ||||||
|     ListModelMixin, |     ListModelMixin, | ||||||
| @@ -366,23 +367,12 @@ class SavedViewViewSet(ModelViewSet): | |||||||
|         serializer.save(user=self.request.user) |         serializer.save(user=self.request.user) | ||||||
|  |  | ||||||
|  |  | ||||||
| class BulkEditView(APIView): | class BulkEditView(GenericAPIView): | ||||||
|  |  | ||||||
|     permission_classes = (IsAuthenticated,) |     permission_classes = (IsAuthenticated,) | ||||||
|     serializer_class = BulkEditSerializer |     serializer_class = BulkEditSerializer | ||||||
|     parser_classes = (parsers.JSONParser,) |     parser_classes = (parsers.JSONParser,) | ||||||
|  |  | ||||||
|     def get_serializer_context(self): |  | ||||||
|         return { |  | ||||||
|             'request': self.request, |  | ||||||
|             'format': self.format_kwarg, |  | ||||||
|             'view': self |  | ||||||
|         } |  | ||||||
|  |  | ||||||
|     def get_serializer(self, *args, **kwargs): |  | ||||||
|         kwargs['context'] = self.get_serializer_context() |  | ||||||
|         return self.serializer_class(*args, **kwargs) |  | ||||||
|  |  | ||||||
|     def post(self, request, *args, **kwargs): |     def post(self, request, *args, **kwargs): | ||||||
|         serializer = self.get_serializer(data=request.data) |         serializer = self.get_serializer(data=request.data) | ||||||
|         serializer.is_valid(raise_exception=True) |         serializer.is_valid(raise_exception=True) | ||||||
| @@ -399,23 +389,12 @@ class BulkEditView(APIView): | |||||||
|             return HttpResponseBadRequest(str(e)) |             return HttpResponseBadRequest(str(e)) | ||||||
|  |  | ||||||
|  |  | ||||||
| class PostDocumentView(APIView): | class PostDocumentView(GenericAPIView): | ||||||
|  |  | ||||||
|     permission_classes = (IsAuthenticated,) |     permission_classes = (IsAuthenticated,) | ||||||
|     serializer_class = PostDocumentSerializer |     serializer_class = PostDocumentSerializer | ||||||
|     parser_classes = (parsers.MultiPartParser,) |     parser_classes = (parsers.MultiPartParser,) | ||||||
|  |  | ||||||
|     def get_serializer_context(self): |  | ||||||
|         return { |  | ||||||
|             'request': self.request, |  | ||||||
|             'format': self.format_kwarg, |  | ||||||
|             'view': self |  | ||||||
|         } |  | ||||||
|  |  | ||||||
|     def get_serializer(self, *args, **kwargs): |  | ||||||
|         kwargs['context'] = self.get_serializer_context() |  | ||||||
|         return self.serializer_class(*args, **kwargs) |  | ||||||
|  |  | ||||||
|     def post(self, request, *args, **kwargs): |     def post(self, request, *args, **kwargs): | ||||||
|  |  | ||||||
|         serializer = self.get_serializer(data=request.data) |         serializer = self.get_serializer(data=request.data) | ||||||
| @@ -453,23 +432,12 @@ class PostDocumentView(APIView): | |||||||
|         return Response("OK") |         return Response("OK") | ||||||
|  |  | ||||||
|  |  | ||||||
| class SelectionDataView(APIView): | class SelectionDataView(GenericAPIView): | ||||||
|  |  | ||||||
|     permission_classes = (IsAuthenticated,) |     permission_classes = (IsAuthenticated,) | ||||||
|     serializer_class = DocumentListSerializer |     serializer_class = DocumentListSerializer | ||||||
|     parser_classes = (parsers.MultiPartParser, parsers.JSONParser) |     parser_classes = (parsers.MultiPartParser, parsers.JSONParser) | ||||||
|  |  | ||||||
|     def get_serializer_context(self): |  | ||||||
|         return { |  | ||||||
|             'request': self.request, |  | ||||||
|             'format': self.format_kwarg, |  | ||||||
|             'view': self |  | ||||||
|         } |  | ||||||
|  |  | ||||||
|     def get_serializer(self, *args, **kwargs): |  | ||||||
|         kwargs['context'] = self.get_serializer_context() |  | ||||||
|         return self.serializer_class(*args, **kwargs) |  | ||||||
|  |  | ||||||
|     def post(self, request, format=None): |     def post(self, request, format=None): | ||||||
|         serializer = self.get_serializer(data=request.data) |         serializer = self.get_serializer(data=request.data) | ||||||
|         serializer.is_valid(raise_exception=True) |         serializer.is_valid(raise_exception=True) | ||||||
| @@ -620,23 +588,12 @@ class StatisticsView(APIView): | |||||||
|         }) |         }) | ||||||
|  |  | ||||||
|  |  | ||||||
| class BulkDownloadView(APIView): | class BulkDownloadView(GenericAPIView): | ||||||
|  |  | ||||||
|     permission_classes = (IsAuthenticated,) |     permission_classes = (IsAuthenticated,) | ||||||
|     serializer_class = BulkDownloadSerializer |     serializer_class = BulkDownloadSerializer | ||||||
|     parser_classes = (parsers.JSONParser,) |     parser_classes = (parsers.JSONParser,) | ||||||
|  |  | ||||||
|     def get_serializer_context(self): |  | ||||||
|         return { |  | ||||||
|             'request': self.request, |  | ||||||
|             'format': self.format_kwarg, |  | ||||||
|             'view': self |  | ||||||
|         } |  | ||||||
|  |  | ||||||
|     def get_serializer(self, *args, **kwargs): |  | ||||||
|         kwargs['context'] = self.get_serializer_context() |  | ||||||
|         return self.serializer_class(*args, **kwargs) |  | ||||||
|  |  | ||||||
|     def post(self, request, format=None): |     def post(self, request, format=None): | ||||||
|         serializer = self.get_serializer(data=request.data) |         serializer = self.get_serializer(data=request.data) | ||||||
|         serializer.is_valid(raise_exception=True) |         serializer.is_valid(raise_exception=True) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 jonaswinkler
					jonaswinkler