web-dev-qa-db-fra.com

Django fonctionne correctement, mais un message d'avertissement TEMPLATE_ *

Lorsque j'utilise runserver, il donne ce message d'avertissement:

(1_8.W001) Les paramètres autonomes TEMPLATE_ * étaient obsolètes dans Django 1.8 et le dictionnaire TEMPLATES est prioritaire. Vous devez placer les valeurs des paramètres suivants dans votre dict TEMPLATES par défaut: TEMPLATE_DEBUG.

Quoth la documentation Django:

"TEMPLATE_DEBUG Déconseillé depuis la version 1.8: Définissez plutôt l'option 'debug' dans les OPTIONS d'un backend DjangoTemplates."

Voici mon settings.py avec mes vaines tentatives pour le réparer:

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

Qu'est-ce que j'oublie ici?

37
codingcoding

Définissez debug dans le dictionnaire OPTIONS de vos paramètres de modèles.

DEBUG = True

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

Supprimez ensuite cette ligne de vos paramètres pour arrêter les avertissements

TEMPLATE_DEBUG = DEBUG

Voir Django docs pour des instructions détaillées sur la mise à jour des paramètres de votre modèle.

78
Alasdair

supprimez APP_DIRS et ajoutez les chargeurs à l'intérieur des modèles. Exemple:

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',
            ]
        },
    },
]
15
OWADVL

De settings.py supprimez tout cela:

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

Ajoutez ensuite 'modèles' ici:

    TEMPLATES = [
    {
        ...
        'DIRS': [here],
        ...
            ],
        },
    },
]
14
dev.ICE

C'est la meilleure solution:

Changez cette ligne en:

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

ce qui devrait corriger l'avertissement.

Je l'ai trouvé ici .

7
Maxim Agapov

Dans mon setting.py dans Django, il n'y a pas ce script:

TEMPLATE_DEBUG = DEBUG

et

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

Vous pouvez peut-être essayer de les supprimer et l'exécuter à nouveau.

1
Joni