This is a port of the excellent django-debug-toolbar for Flask applications.
Setting up the debug toolbar is simple:
from flask import Flask
from flask_debugtoolbar import DebugToolbarExtension
app = Flask(__name__)
# the toolbar is only enabled in debug mode:
app.debug = True
# set a 'SECRET_KEY' to enable the Flask session cookies
app.config['SECRET_KEY'] = '<replace with a secret key>'
toolbar = DebugToolbarExtension(app)
The toolbar will automatically be injected into Jinja templates when debug mode is on. In production, setting app.debug = False will disable the toolbar.
The toolbar support several configuration options:
| Name | Description | Default |
|---|---|---|
| DEBUG_TB_ENABLED | Enable the toolbar? | app.debug |
| DEBUG_TB_HOSTS | Whitelist of hosts to display toolbar | any host |
| DEBUG_TB_INTERCEPT_REDIRECTS | Should intercept redirects? | True |
| DEBUG_TB_PANELS | List of module/class names of panels | enable all built-in panels |
| DEBUG_TB_PROFILER_ENABLED | Enable the profiler on all requests | False, user-enabled |
| DEBUG_TB_TEMPLATE_EDITOR_ENABLED | Enable the template editor | False |
To change one of the config options, set it in the Flask app’s config like:
app.config['DEBUG_TB_INTERCEPT_REDIRECTS'] = False