Back to Tutorials

Building REST APIs with Django REST Framework

Django REST Framework

Django REST Framework (DRF) is a powerful toolkit for building Web APIs in Django.

Setting Up Django Project

# Install Django and DRF
pip install django djangorestframework

# Create project
django-admin startproject myapi
cd myapi
python manage.py startapp users

Serializers

# users/serializers.py
from rest_framework import serializers
from .models import User

class UserSerializer(serializers.ModelSerializer):
    class Meta:
        model = User
        fields = ['id', 'name', 'email', 'created_at']

ViewSets

# users/views.py
from rest_framework import viewsets
from .models import User
from .serializers import UserSerializer

class UserViewSet(viewsets.ModelViewSet):
    queryset = User.objects.all()
    serializer_class = UserSerializer

Best Practices

  • Use ViewSets for CRUD operations
  • Implement pagination
  • Add authentication and permissions
  • Use serializers for validation
  • Document your API