Django plugin that installs and configures the Django Debug Toolbar
The Django Debug Toolbar is amazingly useful for development. It's so powerful that it's very dangerous to activate it in production.
The goal of this plugin is to enable a developer to activate the Django Debug Toolbar with the minimum number of steps, while keeping debug related code out of the codebase.
First configure your Django project to use DJP.
Then install this plugin in the same environment as your Django application.
pip install django-plugin-django-debug-toolbar
Looking at Django Debug Toolbar's installation instructions, this plugin takes care of the following steps (using their numbering):
- #1. Install the Package
- #3. Install the App
- #4. Add the URLs
- #5. Add the Middleware
- #6. Configure Internal IPs
- to include
127.0.0.1
- to include
But you still need to:
- #2. Check for Prerequisites
- like settings for static files and templates
- #6. Configure Internal IPs
- if you require IPs other than
127.0.0.1
, set them inINTERNAL_IPS
in your settings
- if you require IPs other than
- #7. Disable the toolbar when running tests (optional)
- perhaps do this by disabling DJP when testing
This plugin injects the Debug Toolbar Middleware early, but not too early, in the middleware list.
It needs to run after any midddleware that decodes requests (GZipMiddleware
), or sets request.META['REMOTE_ADDR']
(like django-xforwardedfor-middleware
or django-xff
).
If you have any other middleware that needs to run before the Debug Toolbar Middleware, please open a ticket and we'll add it to the TOOLBAR_MUST_GO_AFTER
list.
To set up this plugin locally, first checkout the code. Then create a new virtual environment:
cd django-plugin-django-debug-toolbar
python -m venv venv
source venv/bin/activate
Now install the dependencies and test dependencies:
pip install -e '.[test]'
To run the tests:
python -m pytest