diff options
Diffstat (limited to 'debug_toolbar/panels/template.py')
| -rw-r--r-- | debug_toolbar/panels/template.py | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/debug_toolbar/panels/template.py b/debug_toolbar/panels/template.py index a69b42a..48225a0 100644 --- a/debug_toolbar/panels/template.py +++ b/debug_toolbar/panels/template.py @@ -19,7 +19,7 @@ from debug_toolbar.utils.tracking.db import recording, SQLQueryTriggered from django.test.utils import instrumented_test_render from django.template import Template -if not hasattr(Template, '_render'): # Django < 1.2 +if not hasattr(Template, '_render'): # Django < 1.2 if Template.render != instrumented_test_render: Template.original_render = Template.render Template.render = instrumented_test_render @@ -31,6 +31,8 @@ else: # MONSTER monkey-patch old_template_init = Template.__init__ + + def new_template_init(self, template_string, origin=None, name='<Unknown Template>'): old_template_init(self, template_string, origin, name) self.origin = origin @@ -44,18 +46,18 @@ class TemplateDebugPanel(DebugPanel): name = 'Template' template = 'debug_toolbar/panels/templates.html' has_content = True - + def __init__(self, *args, **kwargs): super(TemplateDebugPanel, self).__init__(*args, **kwargs) self.templates = [] template_rendered.connect(self._store_template_info) - + def _store_template_info(self, sender, **kwargs): t = kwargs['template'] if t.name and t.name.startswith('debug_toolbar/'): return # skip templates that we are generating through the debug toolbar. context_data = kwargs['context'] - + context_list = [] for context_layer in context_data.dicts: temp_layer = {} @@ -95,20 +97,20 @@ class TemplateDebugPanel(DebugPanel): pass kwargs['context'] = context_list self.templates.append(kwargs) - + def nav_title(self): return _('Templates') - + def title(self): num_templates = len(self.templates) return _('Templates (%(num_templates)s rendered)') % {'num_templates': num_templates} - + def url(self): return '' - + def process_request(self, request): self.request = request - + def process_response(self, request, response): context_processors = dict( [ @@ -133,7 +135,7 @@ class TemplateDebugPanel(DebugPanel): context_list = template_data.get('context', []) info['context'] = '\n'.join(context_list) template_context.append(info) - + self.record_stats({ 'templates': template_context, 'template_dirs': [normpath(x) for x in settings.TEMPLATE_DIRS], |
