From 6a1e15b3c9f5658a26b77121af126a84258f8b0d Mon Sep 17 00:00:00 2001 From: Rob Hudson Date: Sun, 7 Sep 2008 10:56:54 -0700 Subject: updating to pass around the request object --- debug_toolbar/middleware.py | 2 +- debug_toolbar/panels/__init__.py | 5 +++++ debug_toolbar/panels/timer.py | 3 ++- debug_toolbar/toolbar/loader.py | 5 +++-- 4 files changed, 11 insertions(+), 4 deletions(-) (limited to 'debug_toolbar') diff --git a/debug_toolbar/middleware.py b/debug_toolbar/middleware.py index a13a735..13a7e98 100644 --- a/debug_toolbar/middleware.py +++ b/debug_toolbar/middleware.py @@ -20,7 +20,7 @@ class DebugToolbarMiddleware(object): def process_request(self, request): if settings.DEBUG and request.META.get('REMOTE_ADDR') in settings.INTERNAL_IPS: - self.debug_toolbar = DebugToolbar() + self.debug_toolbar = DebugToolbar(request) self.debug_toolbar.load_panels() return None diff --git a/debug_toolbar/panels/__init__.py b/debug_toolbar/panels/__init__.py index 4dfa354..c4a9f48 100644 --- a/debug_toolbar/panels/__init__.py +++ b/debug_toolbar/panels/__init__.py @@ -6,6 +6,9 @@ class DebugPanel(object): """ # name = Base + def __init__(self, request): + self.request = request + def dom_id(self): return 'djDebug%sPanel' % (self.name.replace(' ', '')) @@ -16,4 +19,6 @@ class DebugPanel(object): raise NotImplementedError def content(self): + # TODO: This is a bit flaky in that panel.content() returns a string + # that gets inserted into the toolbar HTML template. raise NotImplementedError diff --git a/debug_toolbar/panels/timer.py b/debug_toolbar/panels/timer.py index 0a5bc83..d520191 100644 --- a/debug_toolbar/panels/timer.py +++ b/debug_toolbar/panels/timer.py @@ -7,7 +7,8 @@ class TimerDebugPanel(DebugPanel): """ name = 'Timer' - def __init__(self): + def __init__(self, request): + super(TimerDebugPanel, self).__init__(request) self._start_time = time.time() def title(self): diff --git a/debug_toolbar/toolbar/loader.py b/debug_toolbar/toolbar/loader.py index f4cc068..5e0a9e4 100644 --- a/debug_toolbar/toolbar/loader.py +++ b/debug_toolbar/toolbar/loader.py @@ -5,7 +5,8 @@ from django.template.loader import render_to_string class DebugToolbar(object): - def __init__(self): + def __init__(self, request): + self.request = request self.panels = [] self.panel_list = [] self.content_list = [] @@ -33,7 +34,7 @@ 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() + panel_instance = panel_class(self.request) except: continue # Some problem loading panel -- cgit v1.2.3