aboutsummaryrefslogtreecommitdiffstats
path: root/debug_toolbar
diff options
context:
space:
mode:
Diffstat (limited to 'debug_toolbar')
-rw-r--r--debug_toolbar/middleware.py8
-rw-r--r--debug_toolbar/settings.py14
2 files changed, 14 insertions, 8 deletions
diff --git a/debug_toolbar/middleware.py b/debug_toolbar/middleware.py
index e402553..b7114af 100644
--- a/debug_toolbar/middleware.py
+++ b/debug_toolbar/middleware.py
@@ -37,12 +37,8 @@ class DebugToolbarMiddleware(object):
"""
debug_toolbars = {}
- def __init__(self):
- self.show_toolbar = dt_settings.CONFIG['SHOW_TOOLBAR_CALLBACK'] or show_toolbar
- self.insert_before = dt_settings.CONFIG['INSERT_BEFORE']
-
def process_request(self, request):
- if not self.show_toolbar(request):
+ if not dt_settings.CONFIG['SHOW_TOOLBAR_CALLBACK'](request):
return
response = None
toolbar = DebugToolbar(request)
@@ -82,7 +78,7 @@ class DebugToolbarMiddleware(object):
response.get('Content-Type', '').split(';')[0] in _HTML_TYPES):
content = force_text(response.content, encoding=settings.DEFAULT_CHARSET)
try:
- insert_at = content.lower().rindex(self.insert_before.lower())
+ insert_at = content.lower().rindex(dt_settings.CONFIG['INSERT_BEFORE'].lower())
except ValueError:
pass
else:
diff --git a/debug_toolbar/settings.py b/debug_toolbar/settings.py
index 5a58b6b..8534c2a 100644
--- a/debug_toolbar/settings.py
+++ b/debug_toolbar/settings.py
@@ -20,7 +20,7 @@ CONFIG_DEFAULTS = {
'RESULTS_STORE_SIZE': 10,
'ROOT_TAG_EXTRA_ATTRS': '',
'SHOW_COLLAPSED': False,
- 'SHOW_TOOLBAR_CALLBACK': None,
+ 'SHOW_TOOLBAR_CALLBACK': 'debug_toolbar.middleware.show_toolbar',
# Panel options
'EXTRA_SIGNALS': [],
'ENABLE_STACKTRACES': True,
@@ -36,7 +36,6 @@ CONFIG_DEFAULTS = {
'SQL_WARNING_THRESHOLD': 500, # milliseconds
}
-CONFIG = CONFIG_DEFAULTS.copy()
USER_CONFIG = getattr(settings, 'DEBUG_TOOLBAR_CONFIG', {})
# Backward-compatibility for 1.0, remove in 2.0.
_RENAMED_CONFIG = {
@@ -60,7 +59,18 @@ if 'TAG' in USER_CONFIG:
"TAG was replaced by INSERT_BEFORE. Update your "
"DEBUG_TOOLBAR_CONFIG setting.", DeprecationWarning)
USER_CONFIG['INSERT_BEFORE'] = '</%s>' % USER_CONFIG.pop('TAG')
+
+CONFIG = CONFIG_DEFAULTS.copy()
CONFIG.update(USER_CONFIG)
+if isinstance(CONFIG['SHOW_TOOLBAR_CALLBACK'], six.string_types):
+ # Replace this with import_by_path in Django >= 1.6.
+ mod_path, func_name = CONFIG['SHOW_TOOLBAR_CALLBACK'].rsplit('.', 1)
+ mod = import_module(mod_path)
+ CONFIG['SHOW_TOOLBAR_CALLBACK'] = getattr(mod, func_name)
+else:
+ warnings.warn(
+ "SHOW_TOOLBAR_CALLBACK is now a dotted path. Update your "
+ "DEBUG_TOOLBAR_CONFIG setting.", DeprecationWarning)
PANELS_DEFAULTS = [