Django documentation

The “contrib” add-ons

This document describes Django version 0.95. For current documentation, go here.

Django aims to follow Python’s “batteries included” philosophy. It ships with a variety of extra, optional tools that solve common Web-development problems.

This code lives in django/contrib in the Django distribution. Here’s a rundown of the packages in contrib:

admin

The automatic Django administrative interface. For more information, see Tutorial 2.

auth

Django’s authentication framework.

See the authentication documentation.

comments

A simple yet flexible comments system. This is not yet documented.

contenttypes

A light framework for hooking into “types” of content, where each installed Django model is a separate content type. This is not yet documented.

csrf

A middleware for preventing Cross Site Request Forgeries

See the csrf documentation.

humanize

A set of Django template filters useful for adding a “human touch” to data. To activate these filters, add 'django.contrib.humanize' to your INSTALLED_APPS setting. Once you’ve done that, use {% load humanize %} in a template, and you’ll have access to these filters:

apnumber

For numbers 1-9, returns the number spelled out. Otherwise, returns the number. This follows Associated Press style.

Examples:

  • 1 becomes 'one'.
  • 2 becomes 'two'.
  • 10 becomes 10.

You can pass in either an integer or a string representation of an integer.

intcomma

Converts an integer to a string containing commas every three digits.

Examples:

  • 4500 becomes '4,500'.
  • 45000 becomes '45,000'.
  • 450000 becomes '450,000'.
  • 4500000 becomes '4,500,000'.

You can pass in either an integer or a string representation of an integer.

intword

Converts a large integer to a friendly text representation. Works best for numbers over 1 million.

Examples:

  • 1000000 becomes '1.0 million'.
  • 1200000 becomes '1.2 million'.
  • 1200000000 becomes '1.2 billion'.

Values up to 1000000000000000 (one quadrillion) are supported.

You can pass in either an integer or a string representation of an integer.

ordinal

Converts an integer to its ordinal as a string.

Examples:

  • 1 becomes '1st'.
  • 2 becomes '2nd'.
  • 3 becomes '3rd'.

You can pass in either an integer or a string representation of an integer.

flatpages

A framework for managing simple “flat” HTML content in a database.

See the flatpages documentation.

markup

A collection of template filters that implement these common markup languages:

  • Textile
  • Markdown
  • ReST (ReStructured Text)

For documentation, read the source code in django/contrib/markup/templatetags/markup.py.

redirects

A framework for managing redirects.

See the redirects documentation.

sites

A light framework that lets you operate multiple Web sites off of the same database and Django installation. It gives you hooks for associating objects to one or more sites.

See the sites documentation.

syndication

A framework for generating syndication feeds, in RSS and Atom, quite easily.

See the syndication documentation.

Other add-ons

If you have an idea for functionality to include in contrib, let us know! Code it up, and post it to the django-users mailing list.

Questions/Feedback

If you notice errors with this documentation, please open a ticket and let us know!

Please only use the ticket tracker for criticisms and improvements on the docs. For tech support, ask in the IRC channel or post to the django-users list.