2015-09-07 3 views
31

Когда я использую runserver, он дает следующее предупреждение:Django приложение работает отлично, но получение TEMPLATE_ * предупреждение

(1_8.W001) Автономный TEMPLATE_ * настройки были устаревшее в Django 1.8 а Словарь TEMPLATES имеет приоритет. Вы должны поместить значения следующих параметров в ваш TEMPLATES по умолчанию: TEMPLATE_DEBUG.

Каркнул Джанго Документации:

"TEMPLATE_DEBUG Устаревшее начиная с версией 1.8: Установите опцию 'отладка' в опциях бекенда DjangoTemplates вместо этого."

Вот мой settings.py мои тщетные попытки исправить:

DEBUG = True 

TEMPLATE_DEBUG = DEBUG 

TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [os.path.join(BASE_DIR, 'myapp/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', 
      ], 
      'debug': DEBUG, 
      'DEBUG': DEBUG, 
      'TEMPLATE_DEBUG': DEBUG 
     }, 
    }, ] 

Что я здесь отсутствует?

+1

Это всего лишь сообщение. Рекомендуется, чтобы вы не использовали TEMPLATE_DEBUG. – Gocht

+0

@Gocht спасибо. Каков правильный способ ввода этого значения в TEMPLATES dict? Я просто прокомментировал строки, которые я добавил в dict, и отладка, похоже, работает нормально. Неужели даже нужно добавить что-нибудь в этот дикт? – codingcoding

+1

Это необходимо, если вы хотите сохранить свой код в актуальном состоянии. @Alasdair дал вам хороший ответ. – Gocht

ответ

69

debug в OPTIONS словарь настроек вашего шаблона.

DEBUG = True 

TEMPLATES = [ 
    { 
     ... 
     'OPTIONS': { 
      'debug': DEBUG, 
     }, 
    }, 
] 

Затем удалите эту строку из ваших настроек, чтобы остановить предупреждения

TEMPLATE_DEBUG = DEBUG 

См Django docs подробные инструкции, как обновить настройки шаблона.

1

В моей setting.py в django, нет этого сценария:

TEMPLATE_DEBUG = DEBUG

и

'debug': DEBUG, 'DEBUG': DEBUG, 'TEMPLATE_DEBUG': DEBUG

Может быть, вы можете попробовать удалить их и запустить его снова.

7

Это лучшее решение:

Изменить эту строку:

TEMPLATES[0]['OPTIONS']['debug'] = True 

, который должен исправить предупреждение.

Я нашел это here.

+0

Измените эту строку на: «ШАБЛОНЫ [0] ['ОПЦИИ'] ['debug'] = True" в <имя проекта> /settings/dev.py –

14

От settings.py удалить все это:

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

Затем добавьте 'Шаблоны' здесь:

TEMPLATES = [ 
    { 
     ... 
     'DIRS': [here], 
     ... 
      ], 
     }, 
    }, 
] 
+0

спасибо, я думаю, что это должен быть правильный путь. – lbsweek

14

удалить APP_DIRS и добавить загрузчики внутри шаблонов. пример:

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

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

  • Нет связанных вопросов^_^