2015-04-04 1 views
0

Я включил путь к моей папке шаблонов в файле settings.py установки:Джанго не могут найти место для загрузки шаблонов/CSS от

TEMPLATE_DIR = os.path.join(BASE_DIR, 'templates') 

и также для STATIC_FILES_DIR, но я продолжаю получать TemplateDoesNotExist ошибка. Когда я смотрю на посмертных ошибки, я вижу:

Django tried loading these templates, in this order: 
Using loader django.template.loaders.filesystem.Loader: 
Using loader django.template.loaders.app_directories.Loader: 
C:\Python27\lib\site-packages\django\contrib\admin\templates\home.html (File does not exist) 
C:\Python27\lib\site-packages\django\contrib\auth\templates\home.html (File does not exist) 

Почему бы template.loader искать файлы шаблонов в этот каталог вместо указанного в моем settings.py файле? Кроме того, когда я копирую свою страницу home.html в первый каталог, упомянутый в сообщении об ошибке, страница загружает контент без ошибок, поэтому как я могу заставить загрузчика перемещаться из того места, которое он ищет, в каталог, где файлы фактически располагается?

ответ

2

Действительно название установки TEMPLATE_DIRS и это кортеж из строк, а не просто строка:

TEMPLATE_DIRS = (os.path.join(BASE_DIR, 'templates'),) 
+0

Примечания для будущих посетителей: Этот параметр является устаревшим в пользу [ 'TEMPLATES'] (https: // docs.djangoproject.com/en/1.8/ref/templates/upgrading/#the-templates-settings) по состоянию на Django 1.8. – Selcuk

+0

Есть ли еще одно объяснение? Ошибка сохраняется, даже когда я делаю это изменение. –

+0

@ Селькук, да, вы правы. Но настройки все еще содержат множественные 'DIRS' и тип кортежа :-) – catavaran