2016-06-04 2 views
0

Я создаю проект под названием «crepes_bretonnes». В этом проекте у меня есть блог приложений. Я создал шаблон date.html. Вот структура моих папок:Django - templatedoesnotexist

crepes_bretonnes/ 
    blog/ 
     __init__.py 
     admin.py 
     migrations/ 
      __init__.py 
     models.py 
     templates/ 
      blog/ 
       addition.html 
       date.html 
     tests.py 
     views.py 
    crepes_bretonnes/ 
     __init__.py 
     settings.py 
     urls.py 
     wsgi.py 
    templates/ 
    db.sqlite3 
    manage.py 

Когда я пытаюсь увидеть страницу, у меня есть сообщение templateDoesNotExist. Я много читал об этом в Интернете, но мне не удалось решить мою проблему. На самом деле, я не понимаю, почему Django не ищет в моей папке шаблонов в блоге приложения, хотя я написал «блог» в INSTALLED_APP в файле settings.py. Очевидно, я положил TEMPLATE_DIRS = (os.path.join(BASE_DIR, 'templates'),) в setting.py. Я также попытался изменить словарь ШАБЛОНЫ. Однако, если я хорошо понял, у него нет ссылки, так как здесь Django должен найти мой шаблон даже без этого. У меня нет решения.

Благодарим за помощь.

PS: Если я поместил date.html в общую папку шаблонов, и я устрою несколько строк, это сработает. Однако это не решение, я бы хотел уважать хорошую структуру.

UPDATE:

Спасибо за ваш ответ. Да, это действительно говорит INSTALLED_APPS в моей настройке и APP_DIRS уже True.

Вот мой TEMPLATES в setting.py:

TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [os.path.join(BASE_DIR, "templates")], 
     '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', 
      ], 
     }, 
    }, 
] 

UPDATE: Сообщение отладки показывает, что поиск Джанго в django.template.loaders.app_directories.Loader:/Users/Benjamin/Анаконда/Библиотека/python2.7/сайт-пакеты/Джанго/вно/администратор/шаблоны/блог/date.html. Однако я ничего не написал в этой папке ... Я работаю в Documents. Почему Django ищет здесь, а не в документах?

+0

Видимо это не совсем та же самая проблема. – KB303

ответ

0

Я предполагаю, что 'INSTALLED_APP' - это опечатка, и это действительно говорит 'INSTALLED_APPS' в ваших настройках. В любом случае, вам нужно установить APP_DIRS = True для шаблонов можно найти в app/templates папках:

TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [ 
       os.path.join(BASE_DIR, 'templates'), 
       ], 
     'APP_DIRS': True, # this line is important 
     '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' 
       # ... 
      ] 
     }, 
    }, 
] 
+0

Благодарим вас за ответ. Да, это действительно говорит «INSTALLED_APPS» в моей настройке, и «APP_DIRS» уже True. Вот мои «ШАБЛОНЫ» в settings.py: – KB303

Смежные вопросы