Django не может найти каталог шаблонов

Я знаю, что есть много вопросов, подобных этому, но никто еще не решил мою проблему.

Версия для Python: 3.4 версия Django: 1.8

Я получаю TemplateDoesNotExist at / lfstd / при загрузке http://127.0.0.1:8000/lfstd/ .

system.py:

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) TEMPLATE_PATH = os.path.join(BASE_DIR, 'templates') TEMPLATE_DIRS = ( TEMPLATE_PATH, ) 

lfstd / views.py:

 def index(request): [...] return render(request, 'lfstd/index.html', context_dict) 

project urls.py:

 from django.conf.urls import include, url from django.contrib import admin url(r'^admin/', include(admin.site.urls)), url(r'^lfstd/', include('lfstd.urls')), 

lfstd urls.py:

 from django.conf.urls import patterns, url from lfstd import views urlpatterns = patterns('', url(r'^$', views.index, name='index')) 

Выполняя печать на base_dir и template_path, я получаю:

 Base dir: C:\Users\Phil\PycharmProjects\TownBuddies Template path: C:\Users\Phil\PycharmProjects\TownBuddies\templates 

Именно там находится папка моего проекта и шаблона. Тем не менее, django не смотрит в эту папку для шаблонов. Он выглядит в следующих папках:

 C:\Python34\lib\site-packages\django\contrib\admin\templates\lfstd\index.html (File does not exist) C:\Python34\lib\site-packages\django\contrib\auth\templates\lfstd\index.html (File does not exist) 

Фактически, если я перемещаю свой шаблон там, он находит его, и он работает.

Любая помощь очень ценится, я начинаю с Django и полностью застрял …

РЕДАКТИРОВАТЬ:

Я изменил TEMPLATE_DIRS на ШАБЛОНЫ, но Django все еще не ищет в папке шаблонов: из отчета об отладке django

TEMPLATE_DIRS устарел в django 1.8. Вместо этого вы должны использовать TEMPLATES :

 TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [TEMPLATE_PATH], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ] 

Я делал некоторые модульные тесты с pytest-django, когда внезапно я получал повторяющиеся и совершенно неожиданные ошибки ** TemplateDoesNotExist **.

Я нашел этот вопрос stackoverflow, пытаясь понять, что происходит.

Я, наконец, решил проблему, удалив все __pycache__ . С тех пор я узнал, что когда что-то внезапно становится необъяснимым, чтобы убрать __pycache__ прежде чем нарушать вещи, пытаясь исправить их!

Я использовал этот скрипт для рекурсивного удаления всех каталогов __pycache__ где находится модуль со следующим:

 #!/usr/bin/env python import os import shutil #!/usr/bin/env python import os import shutil BASE_DIR = os.path.abspath(__file__) print(BASE_DIR) for root, dirs, files in os.walk(BASE_DIR): for directory in dirs: if directory == '__pycache__': shutil.rmtree(os.path.join(root, directory))