This is a repository for collecting global custom management extensions for the Django Framework.
Python JavaScript
Pull request Compare This branch is 11 commits ahead, 1712 commits behind django-extensions:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Django Extensions

Django Extensions is a collection of custom extensions for the Django Framework.

Customizations of this fork

This fork changes the way the IPython shell is loaded to be able to add additional configuration and startup logic to the Django shell. It loads the users IPython configuration (from ~/.config/ipython/profile_default) and allows to define a startup file, which can come in handy to add additional, django-project-specific functions and variables.

A sample IPython configuration is provided which adds the current development stage from to the IPython prompt, if it's defined.

I modified django_extensions/management/commands/ and django_extensions/management/

To load a file on start of the Django shell, you have to tell Django shell the path to your startup file via the environment variable PYTHONSTARTUP. The django-shell will automatically import all functions and variables from this startup script.

Getting Started

The easiest way to figure out what Django Extensions are all about is to watch the excellent screencast by Eric Holscher. In a couple minutes Eric walks you through a half a dozen command extensions.

Getting It

You can get Django Extensions by using pip or easy_install:

$ pip install django-extensions
$ easy_install django-extensions

If you want to install it from source, grab the git repository from GitHub and run

$ git clone git://
$ cd django-extensions
$ python install

Using It

Generate (and view) a graphviz graph of app models:

$ python graph_models -a -o myapp_models.png

Produce a tab-separated list of (url_pattern, view_function, name) tuples for a project:

$ python show_urls

Getting Involved

Open Source projects can always use more help. Fixing a problem, documenting a feature, adding translation in your language. If you have some time to spare and like to help us, here are the places to do so:


You can view documentation online at:

Or you can look at the docs/ directory in the repository.