A set of generic views for Django REST Framework.
- Install the package using pip:
pip install drf-generic-views
- Add
drf_generic_views
toINSTALLED_APPS
INSTALLED_APPS = [
...,
"drf_generic_views",
]
A mixin for multiple deletion of objects. It provides a destroy
method that deletes all objects in the queryset individually.
It also provides a deletion hook `perform_destroy. It is called with the instance just before it should be deleted.
def perform_destroy(self, instance):
instance.delete()
A mixin for bulk deletion of objects. It provides a destroy
method that deletes all objects in the queryset with a bulk delete.
It also provides a deletion hook perform_destroy
. It is called with the queryset just before all objects should be deleted.
def perform_destroy(self, queryset):
queryset.delete()
A view for bulk deletion of objects. It deletes all objects in the queryset with a bulk delete.
from drf_generic_views.generics import BulkDestroyAPIView
class MyBulkDestroyView(BulkDestroyAPIView):
queryset = MyModel.objects.all()
A view for deleting multiple objects individually from the queryset.
from drf_generic_views.generics import ListDestroyAPIView
class MyListDestroyView(ListDestroyAPIView):
queryset = MyModel.objects.all()
A view for both list and bulk deletion of objects.
from rest_framework.generics import ListAPIView
from drf_generic_views.generics import ListBulkDestroyAPIView
class MyListBulkDestroyView(ListBulkDestroyAPIView):
queryset = MyModel.objects.all()
--
Contributions are more than welcome! Please open an issue if you have any questions or suggestions.