Django documentation

Everything you need to know about Django.

Getting help

Having trouble? We’d like to help!

First steps

Are you new to Django or to programming? This is the place to start!

The model layer

Django provides an abstraction layer (the “models”) for structuring and manipulating the data of your Web application. Learn more about it below:

The view layer

Django has the concept of “views” to encapsulate the logic responsible for processing a user’s request and for returning the response. Find all you need to know about views via the links below:

The template layer

The template layer provides a designer-friendly syntax for rendering the information to be presented to the user. Learn how this syntax can be used by designers and how it can be extended by programmers:

Forms

Django provides a rich framework to facilitate the creation of forms and the manipulation of form data.

The development process

Learn about the various components and tools to help you in the development and testing of Django applications:

The admin

Find all you need to know about the automated admin interface, one of Django’s most popular features:

Security

Security is a topic of paramount importance in the development of Web applications and Django provides multiple protection tools and mechanisms:

Internationalization and localization

Django offers a robust internationalization and localization framework to assist you in the development of applications for multiple languages and world regions:

Python compatibility

Django aims to be compatible with multiple different flavors and versions of Python:

Geographic framework

GeoDjango intends to be a world-class geographic Web framework. Its goal is to make it as easy as possible to build GIS Web applications and harness the power of spatially enabled data.

Other core functionalities

Learn about some other core functionalities of the Django framework:

The Django open-source project

Learn about the development process for the Django project itself and about how you can contribute: