Django Tutorial - Django Tutorial for Beginners | W3schools

Django is a highly popular, free open-source high-level Python web framework. It follows the MVT (Model-View-Template) architecture and helps in the development and maintenance of high quality web applications. The primary reason for its popularity is its encouragement for rapid development with the help of pragmatic design. This fully featured server-side web framework eases the web development process and eventually helps in the saving you a lot of time. It also involves less coding which is another benefit for the developers.


Django Software Foundation is the one responsible for the maintenance of Django framework. Well, it is licensed under the BSD license.

This tutorial will help you to understand the Django framework completely.

Who Is It For?
This tutorial is designed for those who want to learn to develop high quality web applications with the help of Django. We will be starting with the basics of Django and finally move towards the complicated concepts of the framework.

What Are The Required Prerequisites?
There are a few concepts you should be aware of before we can proceed ahead. Take a look at the below list to understand what are the required prerequisites of this tutorial:

* Basic understanding of object oriented and procedural programming concepts which includes:
data structure and associated variables, control structure, class and its objects, etc.

Django’s History
The timeline of the evolution of Django is given below:

2003: Two of the web programmers of Lawrence Journal-World newspaper built Django when they started working on Python. These were Adrian Holovaty and Simon Willison. The framework is named after the famous Belgian-French jazz guitarist, Django Reinhardt.

2005: Django framework got licensed under the BSD (Berkeley Software Distribution) license.

2008: The maintenance of the Django framework was handed over to Django Software Foundation (DSF).


Current Scenario: It emerged as an open source project for all the contributors around the world participating in the betterment of the framework.

Design Philosophies of Django
There are a few design policies of Django that you should be aware of before we step forward in the process of Django learning.

* Loose Coupling: The principle makes sure that the different layers (or various elements of the stack) of the framework stay independent of each other until there’s an absolute necessity of it. In other words, it follows the concept of “loose coupling and tight cohesion”.

* Use of Less Code: It is known for making full utilization of the dynamic nature of Python. Thus, it focuses more on using minimum coding possible.

* Quick Web Development: The framework facilitates you with the fastest web development.

* DRY – Don’t Repeat Yourself: It eliminates the concept of redundancy by keeping every part of the code in “one place only”.

* Consistency: This framework makes sure that the consistency remains from the low level to the high level of the web development.

* Clean and Pragmatic Design: Throughout your web development, there will be a strict maintenance of clean design.