diff options
author | David Cramer <dcramer@gmail.com> | 2016-08-04 11:29:40 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-04 11:29:40 -0700 |
commit | 4a9a2b548789a8ed58619bea969f0816d4fc901a (patch) | |
tree | 80eba8b22dcab51a249f5e88d897b8e80ec2976d | |
parent | 1c84aef025944767365896c5000c46d62a9cef39 (diff) | |
parent | c159f2f071666cf541f046446aa83904d9e6dc42 (diff) | |
download | raven-4a9a2b548789a8ed58619bea969f0816d4fc901a.tar.gz |
Merge pull request #796 from faulteh/django_jinja2_debug_exceptions
Django client template_debug's source_lines is just a snippet
-rw-r--r-- | raven/contrib/django/utils.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/raven/contrib/django/utils.py b/raven/contrib/django/utils.py index 2b431cc..e4738c3 100644 --- a/raven/contrib/django/utils.py +++ b/raven/contrib/django/utils.py @@ -33,12 +33,13 @@ def get_data_from_template(source, debug=None): return rv if debug is not None: - start = debug['start'] - end = debug['end'] - source_lines = debug['source_lines'] lineno = debug['line'] filename = debug['name'] - culprit = filename.split('/templates/')[-1] + source_lines = [] + source_lines += [''] * (debug['source_lines'][0][0]) + for num, line in debug['source_lines']: + source_lines.append(line) + source_lines += [''] * 4 elif source: origin, (start, end) = source filename = culprit = getattr(origin, 'loadname', None) @@ -59,6 +60,9 @@ def get_data_from_template(source, debug=None): if filename is None: filename = '<unknown filename>' + culprit = '<unknown filename>' + else: + culprit = filename.split('/templates/')[-1] pre_context = _remove_numbers(source_lines[max(lineno - 3, 0):lineno]) post_context = _remove_numbers(source_lines[(lineno + 1):(lineno + 4)]) |