Django Extensions is a collection of custom extensions for the Django Framework.
The easiest way to figure out what Django Extensions are all about is to watch the excellent screencast by Eric Holscher (watch the video on vimeo). In a couple minutes Eric walks you through a half a dozen command extensions. There is also a short screencast on GoDjango's Youtube Channel to help show you even more.
Django Extensions requires Django 3.2 or later.
You can get Django Extensions by using pip:
$ pip install django-extensions
If you want to install it from source, grab the git repository from GitHub and run setup.py:
$ git clone git://github.com/django-extensions/django-extensions.git $ cd django-extensions $ python setup.py install
To enable django_extensions in your project you need to add it to INSTALLED_APPS in your projects settings.py file:
INSTALLED_APPS = (
...
'django_extensions',
...
)
Generate (and view) a graphviz graph of app models:
$ python manage.py graph_models -a -o myapp_models.png
Produce a tab-separated list of (url_pattern, view_function, name) tuples for a project:
$ python manage.py show_urls
Check templates for rendering errors:
$ python manage.py validate_templates
Run the enhanced django shell:
$ python manage.py shell_plus
Run the enhanced django runserver, (requires Werkzeug install):
$ python manage.py runserver_plus
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:
- GitHub: https://github.com/django-extensions/django-extensions
- Mailing list: https://groups.google.com/group/django-extensions
- Translations: https://www.transifex.com/projects/p/django-extensions/
You can view documentation online at:
Or you can look at the docs/ directory in the repository.
Django Extensions is free and always will be. It is developed and maintained by developers in an Open Source manner. Any support is welcome. You could help by writing documentation, pull-requests, report issues and/or translations.
Please remember that nobody is paid directly to develop or maintain Django Extensions so we do have to divide our time between putting food on the table, family, this project and the rest of life :-)