Skip to content
Codeloom

Topics / Django

Django

Batteries-included Python web framework. Models, views, templates, and ORM.

Why learn Django?

  • Comes with auth, admin, ORM, forms, and templating out of the box.

  • Battle-tested in production at Instagram, Pinterest, and thousands more.

  • Ship a full CRUD app in an afternoon thanks to the admin.

  • A clear convention for almost everything — fewer decisions to make.

What you can build with Django

Content sites and CMS-style apps Internal tools with the Django admin SaaS backends with the ORM API backends via Django REST Framework

Django tutorials

29 articles · page 1 of 2

Hand-written tutorials, ordered as a recommended learning path.

  1. 01 What Is Django? A practical introduction to Django — its newsroom origins, the batteries it ships with (ORM, admin, auth, templates), and when to pick it over FastAPI or Flask.
  2. 02 Install & First Project A hands-on Django setup guide — virtual environments, pip install django, startproject, runserver, and creating your first app. Get to a working dev server in ten minutes.
  3. 03 Models & ORM A practical tour of Django's ORM — defining models, common field types, makemigrations and migrate, QuerySet filtering, foreign keys, and simple aggregations.
  4. 04 Views & Templates Wire Django models to web pages — function-based views, render(), URL routing with path(), template tags like {% for %} and {% if %}, and template inheritance with {% extends %}.
  5. 05 Django Admin Use the Django admin to get a free CRUD interface for every model — createsuperuser, register models, customise list_display and search_fields, and add inline admins.
  6. 06 FastAPI vs Django vs Flask Compare FastAPI, Django, and Flask for Python web development. Understand performance, features, and ecosystem differences to choose the right framework.
  7. 07 Celery Tasks Integrate Celery with Django for background task processing — setup, writing tasks, retries, periodic tasks, and monitoring with Flower.
  8. 08 Channels WebSockets Add real-time WebSocket support to Django with Channels — consumers, routing, channel layers, groups, and building a live chat.
  9. 09 Custom Managers Build custom managers and chainable QuerySets in Django to encapsulate query logic, keep views thin, and write expressive ORM code.
  10. 10 DB Optimization Eliminate N+1 queries in Django with select_related, prefetch_related, Prefetch objects, annotations, and query profiling tools.
  11. 11 Custom Middleware Build custom Django middleware — request/response processing, exception handling, middleware ordering, and real-world examples.
  12. 12 Multi-Tenancy Implement multi-tenancy in Django using shared database schemas — tenant models, middleware, filtered QuerySets, and data isolation.
  13. 13 Redis Caching Speed up Django with Redis caching — per-view cache, template fragment cache, low-level cache API, and cache invalidation strategies.
  14. 14 DRF ViewSets Build REST APIs with Django REST Framework ViewSets and Routers — ModelViewSet, custom actions, filtering, and URL generation.
  15. 15 Security Checklist Harden your Django app for production — security settings, CSRF, XSS, SQL injection, HTTPS, headers, secrets, and deployment checks.
  16. 16 Signals Deep Dive Master Django signals — connect to post_save and pre_delete, write custom signals, avoid common pitfalls, and know when to use them.
  17. 17 Django ORM How Django QuerySets lazily build SQL, how to avoid N+1 queries with select_related and prefetch_related, and patterns to keep the ORM fast under real load.
  18. 18 Admin Customization Go beyond the default Django admin: customize ModelAdmin classes, list views, search, filters, inline editing, and admin actions to build a usable backoffice your team will actually enjoy.
  19. 19 Django Caching Compare per-view, template fragment, low-level, and per-site caching in Django and learn when each pays off.
  20. 20 Django Celery A practical guide to wiring Celery into Django for background work, scheduled jobs, and reliable task processing.