mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-04-02 13:45:10 -05:00
API refactoring
This commit is contained in:
parent
b331e3388f
commit
6606d7572c
@ -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)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user