| 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:
|
|---|