diff options
| author | Jannis Leidel | 2012-04-07 03:10:10 +0200 |
|---|---|---|
| committer | Jannis Leidel | 2012-04-07 03:10:10 +0200 |
| commit | 963ec339d932d3888f79dea12d3d3a89cbd1f141 (patch) | |
| tree | d57c43f9625cbed2edeb7f583c06aabddb9a463b /debug_toolbar/panels/request_vars.py | |
| parent | 12fdf7ea605d3716d6c9127e22a63bcc345d55be (diff) | |
| download | django-debug-toolbar-963ec339d932d3888f79dea12d3d3a89cbd1f141.tar.bz2 | |
Added resolved URL name to the Request var panel. Closes #214.
Diffstat (limited to 'debug_toolbar/panels/request_vars.py')
| -rw-r--r-- | debug_toolbar/panels/request_vars.py | 47 |
1 files changed, 22 insertions, 25 deletions
diff --git a/debug_toolbar/panels/request_vars.py b/debug_toolbar/panels/request_vars.py index 4f85052..ade23f3 100644 --- a/debug_toolbar/panels/request_vars.py +++ b/debug_toolbar/panels/request_vars.py @@ -1,3 +1,5 @@ +from django.core.urlresolvers import resolve +from django.http import Http404 from django.utils.translation import ugettext_lazy as _ from debug_toolbar.panels import DebugPanel @@ -12,12 +14,6 @@ class RequestVarsDebugPanel(DebugPanel): template = 'debug_toolbar/panels/request_vars.html' has_content = True - def __init__(self, *args, **kwargs): - DebugPanel.__init__(self, *args, **kwargs) - self.view_func = None - self.view_args = None - self.view_kwargs = None - def nav_title(self): return _('Request Vars') @@ -30,31 +26,32 @@ class RequestVarsDebugPanel(DebugPanel): def process_request(self, request): self.request = request - def process_view(self, request, view_func, view_args, view_kwargs): - self.view_func = view_func - self.view_args = view_args - self.view_kwargs = view_kwargs - def process_response(self, request, response): self.record_stats({ 'get': [(k, self.request.GET.getlist(k)) for k in self.request.GET], 'post': [(k, self.request.POST.getlist(k)) for k in self.request.POST], 'cookies': [(k, self.request.COOKIES.get(k)) for k in self.request.COOKIES], }) - - if hasattr(self, 'view_func'): - if self.view_func is not None: - name = get_name_from_obj(self.view_func) - else: - name = '<no view>' - - self.record_stats({ - 'view_func': name, - 'view_args': self.view_args, - 'view_kwargs': self.view_kwargs - }) + view_info = { + 'view_func': _('<no view>'), + 'view_args': 'None', + 'view_kwargs': 'None', + 'view_urlname': 'None', + } + try: + match = resolve(self.request.path) + func, args, kwargs = match + view_info['view_func'] = get_name_from_obj(func) + view_info['view_args'] = args + view_info['view_kwargs'] = kwargs + view_info['view_urlname'] = getattr(match, 'url_name', + _('<unavailable>')) + except Http404: + pass + self.record_stats(view_info) if hasattr(self.request, 'session'): self.record_stats({ - 'session': [(k, self.request.session.get(k)) for k in self.request.session.iterkeys()] - }) + 'session': [(k, self.request.session.get(k)) + for k in self.request.session.iterkeys()] + }) |
