@@ -146,14 +146,30 @@ def template_source(request):
146
146
Return the source of a template, syntax-highlighted by Pygments if
147
147
it's available.
148
148
"""
149
- from django .template . loader import find_template_source
149
+ from django .template import TemplateDoesNotExist
150
150
from django .utils .safestring import mark_safe
151
+ from django .conf import settings
151
152
152
153
template_name = request .GET .get ('template' , None )
153
154
if template_name is None :
154
155
return HttpResponseBadRequest ('"template" key is required' )
155
156
156
- source , origin = find_template_source (template_name )
157
+ try : # Django 1.2 ...
158
+ from django .template .loader import find_template_loader , make_origin
159
+ loaders = []
160
+ for loader_name in settings .TEMPLATE_LOADERS :
161
+ loader = find_template_loader (loader_name )
162
+ if loader is not None :
163
+ loaders .append (loader )
164
+ for loader in loaders :
165
+ try :
166
+ source , display_name = loader .load_template_source (template_name )
167
+ origin = make_origin (display_name , loader , template_name , settings .TEMPLATE_DIRS )
168
+ except TemplateDoesNotExist :
169
+ source = "Template Does Not Exist: %s" % (template_name ,)
170
+ except ImportError : # Django 1.1 ...
171
+ from django .template .loader import find_template_source
172
+ source , origin = find_template_source (template_name )
157
173
158
174
try :
159
175
from pygments import highlight
0 commit comments