diff options
Diffstat (limited to 'debug_toolbar/toolbar/loader.py')
| -rw-r--r-- | debug_toolbar/toolbar/loader.py | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/debug_toolbar/toolbar/loader.py b/debug_toolbar/toolbar/loader.py index 815c7f3..ce17080 100644 --- a/debug_toolbar/toolbar/loader.py +++ b/debug_toolbar/toolbar/loader.py @@ -8,17 +8,31 @@ class DebugToolbar(object): def __init__(self, request): self.request = request self.panels = [] - self.panel_list = [] - self.content_list = [] - + # Override this tuple by copying to settings.py as `DEBUG_TOOLBAR_PANELS` + self.default_panels = ( + 'debug_toolbar.panels.version.VersionDebugPanel', + 'debug_toolbar.panels.timer.TimerDebugPanel', + 'debug_toolbar.panels.headers.HeaderDebugPanel', + 'debug_toolbar.panels.request_vars.RequestVarsDebugPanel', + 'debug_toolbar.panels.sql.SQLDebugPanel', + 'debug_toolbar.panels.cache.CacheDebugPanel', + 'debug_toolbar.panels.template.TemplateDebugPanel', + 'debug_toolbar.panels.logger.LoggingPanel', + ) + self.load_panels() + def load_panels(self): """ - Populate debug panel lists from settings.DEBUG_TOOLBAR_PANELS. + Populate debug panels """ from django.conf import settings from django.core import exceptions - for panel_path in settings.DEBUG_TOOLBAR_PANELS: + # Check if settings has a DEBUG_TOOLBAR_PANELS, otherwise use default + if hasattr(settings, 'DEBUG_TOOLBAR_PANELS'): + self.default_panels = settings.DEBUG_TOOLBAR_PANELS + + for panel_path in self.default_panels: try: dot = panel_path.rindex('.') except ValueError: @@ -34,8 +48,9 @@ class DebugToolbar(object): raise exceptions.ImproperlyConfigured, 'Toolbar Panel module "%s" does not define a "%s" class' % (panel_module, panel_classname) try: - panel_instance = panel_class(self.request) + panel_instance = panel_class() except: + print panel_class raise # Bubble up problem loading panel self.panels.append(panel_instance) @@ -44,4 +59,7 @@ class DebugToolbar(object): """ Renders the overall Toolbar with panels inside. """ - return render_to_string('debug_toolbar/base.html', {'panels': self.panels}) + return render_to_string('debug_toolbar/base.html', { + 'panels': self.panels, + 'BASE_URL': self.request.META.get('SCRIPT_NAME', ''), + }) |
