1 | Index: django/conf/global_settings.py
|
---|
2 | ===================================================================
|
---|
3 | --- django/conf/global_settings.py (revision 639)
|
---|
4 | +++ django/conf/global_settings.py (working copy)
|
---|
5 | @@ -51,6 +51,11 @@
|
---|
6 | # List of locations of the template source files, in search order.
|
---|
7 | TEMPLATE_DIRS = ()
|
---|
8 |
|
---|
9 | +# File extensions added to template names when doing something like {% extends "blah" %}.
|
---|
10 | +TEMPLATE_FILE_EXTENSIONS = (
|
---|
11 | + ".html",
|
---|
12 | +)
|
---|
13 | +
|
---|
14 | # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
|
---|
15 | # trailing slash.
|
---|
16 | # Examples: "http://foo.com/media/", "/media/".
|
---|
17 | Index: django/core/template_file.py
|
---|
18 | ===================================================================
|
---|
19 | --- django/core/template_file.py (revision 639)
|
---|
20 | +++ django/core/template_file.py (working copy)
|
---|
21 | @@ -1,20 +1,21 @@
|
---|
22 | "Wrapper for loading templates from files"
|
---|
23 | -from django.conf.settings import TEMPLATE_DIRS
|
---|
24 | +from django.conf.settings import TEMPLATE_DIRS, TEMPLATE_FILE_EXTENSIONS
|
---|
25 | from template import TemplateDoesNotExist
|
---|
26 | import os
|
---|
27 |
|
---|
28 | -TEMPLATE_FILE_EXTENSION = '.html'
|
---|
29 | -
|
---|
30 | def load_template_source(template_name, template_dirs=None):
|
---|
31 | + if not TEMPLATE_FILE_EXTENSIONS:
|
---|
32 | + raise TemplateDoesNotExist, "Your TEMPLATE_FILE_EXTENSIONS settings is empty. Change it to include at least one template file extension (an empty string is allowed)."
|
---|
33 | if not template_dirs:
|
---|
34 | template_dirs = TEMPLATE_DIRS
|
---|
35 | tried = []
|
---|
36 | for template_dir in template_dirs:
|
---|
37 | - filepath = os.path.join(template_dir, template_name) + TEMPLATE_FILE_EXTENSION
|
---|
38 | - try:
|
---|
39 | - return open(filepath).read()
|
---|
40 | - except IOError:
|
---|
41 | - tried.append(filepath)
|
---|
42 | + for template_ext in TEMPLATE_FILE_EXTENSIONS:
|
---|
43 | + filepath = os.path.join(template_dir, template_name) + template_ext
|
---|
44 | + try:
|
---|
45 | + return open(filepath).read()
|
---|
46 | + except IOError:
|
---|
47 | + tried.append(filepath)
|
---|
48 | if template_dirs:
|
---|
49 | error_msg = "Tried %s" % tried
|
---|
50 | else:
|
---|