Django Web Framework Article Index for
Django
Website Links For
Django
 

Information About

Django Web Framework





OVERVIEW AND FEATURES

Like guitarist Django Reinhardt .

Django's background in managing news sites is evident in its design, as it provides a number of features which facilitate the rapid development of content-oriented websites. For example, rather than requiring developers to build controllers and views for administration areas of a site, Django provides a built-in content-administration application which can be included as part of any Django-powered site and which can manage multiple Django-powered sites from one installation; the administrative application allows for the creation, updating and deleting of content objects with full logs of actions performed on each, and provides an interface for the management of users and user groups (including fine-grained assignment of permissions).

The main Django distribution also bundles applications which provide a comment system; tools for syndicating content via RSS and/or Atom ; "flat pages" which allow for pages of content to be managed without the need to write controllers or views for those pages; and URL redirection capabilities.

Other features of Django include:

  • An Object-relational Mapper .

  • "Pluggable" applications which can be installed into any Django-powered site.

  • A robust Database API .

  • A built-in "generic views" system which does away with the need to write logic for certain common tasks.

  • An extensible tag-based Template system with template inheritance.

  • A Regular-expression -based URL dispatcher.

  • A "middleware" system for the development of additional features; for example, middleware components which provide Caching , output compression, URL Normalization and session support are included in the main Django distribution.

  • Support for Internationalization , including built-in translations of the administrative application's interface into a variety of languages.

  • Built-in documentation accessible via the administrative application (including automatically-generated documentation of models and template tag libraries added by applications).


While Django is influenced heavily by the Model-View-Controller philosophy of development, its developers publicly state that they do not feel bound to strictly observe any particular paradigm, preferring instead to do "what feels right" to them. As a result, for example, what would be called the "controller" in a "true" MVC framework is, in Django, called the "view", and what would be called the "view" is called the "template".


SERVER ARRANGEMENTS

Django was originally designed for deployment on Apache and Mod Python using a PostgreSQL database, but now includes support for WSGI , allowing Django to run via FastCGI or SCGI on Apache or other servers (particularly Lighttpd ), and now has adapters for MySQL and SQLite databases, with a Microsoft SQL Server adapter in development. Django also has a lightweight Web Server built in for development use.


EXTERNAL LINKS