Django is a free and open source framework based on Python language. Django follows Model-View-Template format or architecture. The Django framework is managed by Django Software Management system which is an independent body based on no profit any loss structure.
The main aim of Django is to make simpler and easier way to access complex Databases with websites. Also it provides reusability and pluggability. The Django is based on principle of don’t repeat yourself. As the basic language used in Django is Python all the file structure and its settings are in Python. Django provides create, read, update, delete and edit facility dynamically through the structure and can be managed through admin panels.
Actual Django use is started in 2003. It is discovered by Adrian Holovaty and Simon Willison for internal use. Later it is released in 2005 with name given from guitarist Django Reinhardt. In progress of Django it is open source framework which is able to handle high traffic websites.
1. Django is loosely coupled. I.e. the variable we declare doesn’t require to be declared with its data types.
2. As Django supports MVT architecture the code created is in less quantity.
3. Django support DRY i.e. Don’t Repeat Yourself means do the coding at right place and once only. There is no need to repeat it again and again.
1. Support ORM: Django helps a bridge between model and database engine and supports MySQL, Oracle, Postgress etc.
2. Supports Multilingual websites: Django supports multilingual websites with built in internationalisation system. So helps to see in multiple languages.
3. Supports various frameworks: Django supports built in functionality for AJAX, RSS, Caching and other frameworks.
MVT stands for Model View Template architecture. There is little difference between MVT and MVC architecture. The Controller part is handled by Django itself. And the view part is covered in Template which is composed of both HTML and Django Template Language.
With this Django provides its own lightweight web server used for developing and testing purpose. This is ready to use because it is configured to work with Django. And one of its importance is that it restarts whenever you make changes in the code.
In comparison with Ruby on Rails and Django, Django is much preferred because of its ORM framework, a templating engine and a session management system. Because Python is having explicitness.