I just started using django-extensions and it is a really simple way to add some really useful features to django.
Installation is really straightforward:
$ pip install django-extensions
$ easy_install django-extensions
I did also needed to install pygraphviz:
$ apt-get install python-pygraphviz
Then add django-extensions to the INSTALLED APPS:
INSTALLED_APPS = ( ... 'django_extensions', ... )
The first command I wanted to use was the graph_models command which basically creates a graphical relational diagram of the applications in the project. To visualize the whole project with grouping by application:
$ ./manage.py graph_models -a -g -o my_project.png
and for specific apps:
$ ./manage.py graph_models my_app | dot -Tpng -o my_app.png
This is a really nice way to let yourself and others visualize the db schema at a glance.
Another insanely useful feature is django shell_plus. Among other things this feature autoloads you models into the shell:
$ ./manage.py shell_plus
You should see all the models loaded before the prompt.
So no more
>>> from myapp.models import *
There are plenty of other features described in the documentation, but even in the short time I have played with this package I can tell it will be an indispensable tool in my django toolbox.