|
@@ -0,0 +1,116 @@
|
|
|
+from __future__ import unicode_literals, print_function
|
|
|
+from rest_framework import mixins
|
|
|
+from rest_framework.generics import GenericAPIView
|
|
|
+from . import mixins as bulk_mixins
|
|
|
+
|
|
|
+
|
|
|
+##########################################################
|
|
|
+### Concrete view classes that provide method handlers ###
|
|
|
+### by composing the mixin classes with the base view. ###
|
|
|
+##########################################################
|
|
|
+
|
|
|
+class BulkCreateAPIView(bulk_mixins.BulkCreateModelMixin,
|
|
|
+ GenericAPIView):
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ return self.create(request, *args, **kwargs)
|
|
|
+
|
|
|
+
|
|
|
+class BulkUpdateAPIView(bulk_mixins.BulkUpdateModelMixin,
|
|
|
+ GenericAPIView):
|
|
|
+ def put(self, request, *args, **kwargs):
|
|
|
+ return self.bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def patch(self, request, *args, **kwargs):
|
|
|
+ return self.partial_bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+
|
|
|
+class BulkDestroyAPIView(bulk_mixins.BulkDestroyModelMixin,
|
|
|
+ GenericAPIView):
|
|
|
+ def delete(self, request, *args, **kwargs):
|
|
|
+ return self.bulk_destroy(request, *args, **kwargs)
|
|
|
+
|
|
|
+
|
|
|
+class ListBulkCreateAPIView(mixins.ListModelMixin,
|
|
|
+ bulk_mixins.BulkCreateModelMixin,
|
|
|
+ GenericAPIView):
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
+ return self.list(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ return self.create(request, *args, **kwargs)
|
|
|
+
|
|
|
+
|
|
|
+class ListCreateBulkUpdateAPIView(mixins.ListModelMixin,
|
|
|
+ mixins.CreateModelMixin,
|
|
|
+ bulk_mixins.BulkUpdateModelMixin,
|
|
|
+ GenericAPIView):
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
+ return self.list(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ return self.create(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def put(self, request, *args, **kwargs):
|
|
|
+ return self.bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def patch(self, request, *args, **kwargs):
|
|
|
+ return self.partial_bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+
|
|
|
+class ListCreateBulkUpdateDestroyAPIView(mixins.ListModelMixin,
|
|
|
+ mixins.CreateModelMixin,
|
|
|
+ bulk_mixins.BulkUpdateModelMixin,
|
|
|
+ bulk_mixins.BulkDestroyModelMixin,
|
|
|
+ GenericAPIView):
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
+ return self.list(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ return self.create(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def put(self, request, *args, **kwargs):
|
|
|
+ return self.bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def patch(self, request, *args, **kwargs):
|
|
|
+ return self.partial_bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def delete(self, request, *args, **kwargs):
|
|
|
+ return self.bulk_destroy(request, *args, **kwargs)
|
|
|
+
|
|
|
+
|
|
|
+class ListBulkCreateUpdateAPIView(mixins.ListModelMixin,
|
|
|
+ bulk_mixins.BulkCreateModelMixin,
|
|
|
+ bulk_mixins.BulkUpdateModelMixin,
|
|
|
+ GenericAPIView):
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
+ return self.list(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ return self.create(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def put(self, request, *args, **kwargs):
|
|
|
+ return self.bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def patch(self, request, *args, **kwargs):
|
|
|
+ return self.partial_bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+
|
|
|
+class ListBulkCreateUpdateDestroyAPIView(mixins.ListModelMixin,
|
|
|
+ bulk_mixins.BulkCreateModelMixin,
|
|
|
+ bulk_mixins.BulkUpdateModelMixin,
|
|
|
+ bulk_mixins.BulkDestroyModelMixin,
|
|
|
+ GenericAPIView):
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
+ return self.list(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ return self.create(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def put(self, request, *args, **kwargs):
|
|
|
+ return self.bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def patch(self, request, *args, **kwargs):
|
|
|
+ return self.partial_bulk_update(request, *args, **kwargs)
|
|
|
+
|
|
|
+ def delete(self, request, *args, **kwargs):
|
|
|
+ return self.bulk_destroy(request, *args, **kwargs)
|