Django
is a high-level python web framework that encourages rapid development and
clean, pragmatic design
Django saves you time and makes Web development a joy. Using Django, you can build and
maintain high-quality Web applications with minimal fuss.Django's modularity also
allows easy scalability and enables the reuse of various code blocks, under the
policy of "Don't Repeat Yourself".
Its primary goal is to ease the creation of complex database-driven websites.
Django follows the MVC (model-view-controller)
architectural pattern.
This consists of:
- an object-relational
mapper that mediates between data models
(Python classes) and a relational database ("Model")
- a system for
processing requests with a web templating system("View")
- a
regular-expression-based URL dispatcher ("Controller")
Main features of Django
Object-relation mapper
Define your data models entirely in python. you get a rich dynamic database-access API for free but you can still write SQL if needed.
Automatic admin interface
Save yourself the tedious work of creating interface for people to add and update content Django does that automatically, and it's production-ready.
Elegant URL design
Design pretty, cruft-free URLs with no framework-specific limitation. Be as flexible as you like.
Template system
Use Djangos powerful, extensible and designer-friendly template language to separate design, content and python code.
Cache system
Hook into memcached or other cache frameworks for super performance caching is an granular as you need
Internationalization
Django has full support for multi-language
applications, letting you specify translation strings and providing hooks for
language-specific functionality.