Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Revised r9566 slightly to be backwards compatible with versions 1.0 -…

… 1.0.2.

Also documented the change. We prefer to load directory_index.html for static
directory listings, but if you have the (older style) "directory_index"
template and no .html version, we'll load that. This should stop a bunch of
mysterious breakages when people upgrade to Django 1.0.3 or Django 1.1. Also
keeps the docs in sync with released code.

Fixed #9993.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@9725 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit d32c2908464465d6eda5e69da95a1c6269031def 1 parent 0e59fbb
@malcolmt malcolmt authored
Showing with 11 additions and 2 deletions.
  1. +2 −1  django/views/static.py
  2. +9 −1 docs/howto/static-files.txt
View
3  django/views/static.py
@@ -91,7 +91,8 @@ def serve(request, path, document_root=None, show_indexes=False):
def directory_index(path, fullpath):
try:
- t = loader.get_template('static/directory_index.html')
+ t = loader.select_template(['static/directory_index.html',
+ 'static/directory_index'])
except TemplateDoesNotExist:
t = Template(DEFAULT_DIRECTORY_INDEX_TEMPLATE, name='Default directory index template')
files = []
View
10 docs/howto/static-files.txt
@@ -90,7 +90,7 @@ You can customize the index view by creating a template called
* ``directory`` -- the directory name (a string)
* ``file_list`` -- a list of file names (as strings) in the directory
-Here's the default ``static/directory_index`` template:
+Here's the default ``static/directory_index.html`` template:
.. code-block:: html+django
@@ -112,6 +112,14 @@ Here's the default ``static/directory_index`` template:
</body>
</html>
+.. versionchanged:: 1.0.3
+ Prior to Django 1.0.3, there was a bug in the view that provided directory
+ listings. The template that was loaded had to be called
+ ``static/directory_listing`` (with no ``.html`` extension). For backwards
+ compatibility with earlier versions, Django will still load templates with
+ the older (no extension) name, but it will prefer a the
+ ``directory_index.html`` version.
+
Limiting use to DEBUG=True
==========================
Please sign in to comment.
Something went wrong with that request. Please try again.