codingcoding codingcoding - 5 months ago 11
Python Question

Django app works fine, but getting a TEMPLATE_* warning message

When I use runserver, it gives this warning message:


(1_8.W001) The standalone TEMPLATE_* settings were deprecated in
Django 1.8 and the TEMPLATES dictionary takes precedence. You must put
the values of the following settings into your default TEMPLATES dict:
TEMPLATE_DEBUG.


Quoth the Django Documentation:


"TEMPLATE_DEBUG Deprecated since version 1.8: Set the 'debug' option
in the OPTIONS of a DjangoTemplates backend instead."


Here is my settings.py with my futile attempts to fix it:

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
},
}, ]


What am I missing here?

Answer

Set debug in OPTIONS dictionary of your templates settings.

DEBUG = True

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

Then remove this line from your settings to stop the warnings

TEMPLATE_DEBUG = DEBUG
Comments