Django REST Framework

ViewSets and Routers

ModelViewSet and DefaultRouter

ViewSets and Routers

from rest_framework import viewsets
from rest_framework.routers import DefaultRouter
from .models import Task
from .serializers import TaskSerializer

class TaskViewSet(viewsets.ModelViewSet):
    serializer_class = TaskSerializer

    def get_queryset(self):
        return Task.objects.filter(project__owner=self.request.user)

router = DefaultRouter()
router.register("tasks", TaskViewSet, basename="task")
# urlpatterns = router.urls  → /api/v1/tasks/