Overview

Django REST Framework 3.13, released on March 25, 2021, adds Django 3.2 support and improves OpenAPI schema generation.

Main Features

Django 3.2 support

DRF 3.13 is fully compatible with Django 3.2 LTS, benefiting from new functional indexes and Django ORM improvements.

python
from rest_framework import serializers, viewsets
from rest_framework.decorators import action
from rest_framework.response import Response

class ProductSerializer(serializers.ModelSerializer):
    class Meta:
        model = Product
        fields = ['id', 'name', 'price', 'stock']

class ProductViewSet(viewsets.ModelViewSet):
    queryset = Product.objects.all()
    serializer_class = ProductSerializer

    @action(detail=False, methods=['get'])
    def in_stock(self, request):
        qs = self.queryset.filter(stock__gt=0)
        serializer = self.get_serializer(qs, many=True)
        return Response(serializer.data)

OpenAPI improvements

Automatic OpenAPI schema generation is improved with better type support, error responses, and filter parameter handling.

python
from rest_framework.schemas import get_schema_view
from django.urls import path

# OpenAPI schema generation
schema_view = get_schema_view(
    title='Products API',
    description='Product management API',
    version='1.0.0',
)

urlpatterns = [
    path('schema/', schema_view, name='openapi-schema'),
]

Sources