Django is a high-level web framework for building database-backed sites and complex web applications. It emphasises reusable components, clear separation of responsibilities and the principle of avoiding duplicated application code. The framework suits everything from editorial websites and portals to applications with substantial data models and user accounts.
Applications are assembled from reusable Django apps, URL patterns, views, templates and models. The framework supplies common services directly rather than requiring developers to select separate packages for every concern. Its model-template-view architecture, extensive documentation and mature extension ecosystem are especially useful for teams maintaining large projects.
The built-in admin works directly with registered models and is distinct from the public-facing views created for a site. Developers can also reuse database querysets across forms, templates and custom management operations, rather than maintaining separate data-access paths for every interface.
This is free and open source software.
Key Features
- Maps URL patterns to views, including class-based and function-based handlers.
- Object-relational mapper supports model relationships, queries, transactions and multiple database backends.
- Integrated migration system manages changes to database schemas.
- Automatically generated administration interface for managing application models and records.
- Form classes provide data binding, field validation and error reporting.
- Built-in authentication, user permissions, password handling and session management.
- Template engine supports inheritance, escaping, custom filters and tags.
- Security protections address CSRF, cross-site scripting, clickjacking and common request vulnerabilities.
- Caching framework supports configurable cache backends and per-view caching.
- Testing utilities include an HTTP test client and database-aware test cases.
- Internationalisation, localisation, syndication feeds and middleware extension points.
- Custom model managers and querysets encapsulate frequently used database operations.
- Class-based generic views handle recurring listing, detail and editing workflows.
- Signals and management commands offer extension points outside normal web requests.
Website: www.djangoproject.com/
Support: GitHub Code Repository
Developer: Django Software Foundation
License: BSD 3-Clause ‘New’ or ‘Revised’ License
Django is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| Python Object-Relational Mapping Software | |
|---|---|
| Django | High-level web application framework that has a powerful ORM |
| SQLAlchemy | Python SQL Toolkit and Object Relational Mapper |
| Peewee | Simple, small and expressive Object Relational Mapper. It has few concepts |
| SQLModel | Combines database models with type-safe data validation |
| Tortoise | Easy-to-use asyncio ORM inspired by Django |
| Pony | Billed as the smartest Python ORM |
| Piccolo | Async-first database toolkit with migrations and a powerful query API |
| SQLObject | Forms a part of many applications including TurboGears |
| ormar | Build expressive async database models with minimal boilerplate |
| Edgy | Modern async database layer focused on simplicity and flexibility |
| Saffier | Lightweight async data modelling with support for multiple databases |
| Storm | Designed to work with thin relational databases and big systems |
Read our verdict in the software roundup.
| Python Frameworks | |
|---|---|
| Django | High-level web application framework |
| Dash | Build analytical web applications without JavaScript |
| Tornado | Framework, scalable web server, and asynchronous networking library |
| TurboGears | Framework based on the ObjectDispatch paradigm |
| Masonite | Dev tool with all the features needed for rapid development |
| Robyn | Python web framework designed for high performance |
| Reflex | Library to build full-stack web apps in pure Python |
| Frappe | Low-code, metadata-driven web application framework |
| Zope | Object-oriented web application server |
| Emmett | Full-stack Python web framework |
| PY4WEB | Successor to web2py |
| CubicWeb | Semantic web framework |
| Reahl | Python-only web framework |
| django-hotsauce | Rapid web application development and testing |
| Jam.py | Web front-end application generator |
| Grok | Web framework based on Zope Toolkit technology |
| web2py | Full-featured, full-stack framework for rapid development |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.