Question

je suis en train de lire http://www.djangobook.com/en/2.0/chapter04.html Ce qui suit Django 1.4 mais j'utilise Django 1.6 afin de définir le répertoire de modèle dans Django 1.6 car les paramètres ne dispose pas de variable template_dirs et pourquoi les développeurs ont changé cela? Merci d'avance.

Était-ce utile?

La solution

Ajouter à Settings.py

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

Autres conseils

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

Ajouter ceci à settings.py. Dans Django 1.6 BASE_DIR est défini. Sinon définir BASE_DIR comme

import os
BASE_DIR = os.path.dirname(os.path.dirname(__file__))

Selon le tutoriel de Django, vous devriez ajouterTEMPLATE_DIRS = [os.path.join(BASE_DIR, 'templates')]à ton Settings.py fichier (donc c'est un list pas un tuple)

Ça devrait être

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

Ou vous pourriez voir une erreur comme ceci:

DemROSPATIONWARNING: Le paramètre Template_DIRS doit être un tuple. Veuillez réparer vos paramètres, car la correction automatique est désormais obsolète.
self._wrapy = Paramètres (paramètres_module)

Pour django> = 1.6 c'est un tuple

Utilisez l'extrait de code ci-dessous. Collez-le dans le dernier du fichier Settings.py.

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

Ici BASE_DIR signifie votre répertoire de projet, pas le répertoire intérieur où réside les paramètres.py. Créez un répertoire nommé "modèles" (sans citations) à l'intérieur du BASE_DIR Et stockez vos modèles à l'intérieur de ce répertoire. Django rejoindra le répertoire des modèles au BASE_DIR utilisant os.path.join() fonction. J'espère que cela t'aides.

Comme je l'ai posté https://stackoverflow.com/a/40145444/6333418 Vous devez l'ajouter à la liste DIR qui se trouve à l'intérieur de Settings.py sous des modèles.

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': ['[project name]/templates'], # Replace with your project name
        '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',
            ],
        },
    },
]
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top