Tutorials Courses Interview Prep (100 Q&A) AI Tools (50) Developer Tools (50) Tracks Pricing Plans Blog & Articles Contact Us
Django 5 Advanced Architecture & Celery 20 mins read Free Lesson

DRF Generic Views, ModelViewSets & DefaultRouter

Scaffold complete CRUD REST APIs in 10 lines of code with ModelViewSet and DefaultRouter.

DRF ModelViewSet Scaffolding

# views.py
from rest_framework import viewsets, permissions
from .models import Tutorial
from .serializers import TutorialSerializer

class TutorialViewSet(viewsets.ModelViewSet):
    queryset = Tutorial.objects.filter(is_free=True)
    serializer_class = TutorialSerializer
    permission_classes = [permissions.IsAuthenticatedOrReadOnly]

# urls.py
from rest_framework.routers import DefaultRouter
router = DefaultRouter()
router.register(r'tutorials', TutorialViewSet)
urlpatterns = router.urls