Ordering in API Results

A snippet showing how to use OrderingFilter in DRF.


# settings.py

REST_FRAMEWORK = {
    "DEFAULT_FILTER_BACKENDS": [
        "rest_framework.filters.OrderingFilter",
    ],
}
      

# views.py

from rest_framework import viewsets
from .models import Article
from .serializers import ArticleModelSerializer

class ArticleViewSet(viewsets.ReadOnlyModelViewSet):
    queryset = Article.objects.all()
    serializer_class = ArticleModelSerializer
    ordering_fields = ["title", "created_at"]
    ordering = ["-created_at"]  # default
      
Explanation:
  • Clients can order with ?ordering=title or ?ordering=-created_at.
Never miss a story on Django.wiki

Subscribe for fresh tutorials, snippets, and updates.

By subscribing you agree to our Privacy Policy.