settings.pyに追加します
from os.path import join
TEMPLATE_DIRS = (
join(BASE_DIR, 'templates'),
)
質問
私は読んでいます http://www.djangobook.com/en/2.0/chapter04.html これはDjango 1.4に続きますが、Django 1.6を使用しているため、settings.pyがTemplate_dirs変数を持っていないため、Django 1.6のテンプレートディレクトリを設定する方法と、開発者がこれを変更した理由前もって感謝します。
解決
settings.pyに追加します
from os.path import join
TEMPLATE_DIRS = (
join(BASE_DIR, 'templates'),
)
他のヒント
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, 'templates'),
)
これを追加します settings.py
. 。 Django 1.6で BASE_DIR
定義されています。それ以外の場合は定義します BASE_DIR
なので
import os
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
Djangoのチュートリアルによると、追加する必要がありますTEMPLATE_DIRS = [os.path.join(BASE_DIR, 'templates')]
あなたに settings.py ファイル(a list
ではありません tuple
)
そのはず
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, 'templates'),
)
または、次のようなエラーが表示される場合があります。
DeprecationWarning:Template_Dirs設定はタプルでなければなりません。自動修正が廃止されたため、設定を修正してください。
self._wrapped = settings(settings_module)
django> = 1.6の場合それはaです tuple
以下の指定されたコードスニペットを使用します。 settings.pyファイルの最後に貼り付けます。
from os.path import join
TEMPLATE_DIRS = (
join(BASE_DIR, 'templates'),
)
ここ BASE_DIR
設定]が存在する内部ディレクトリではなく、プロジェクトディレクトリを意味します。内部に「テンプレート」(引用符なし)という名前のディレクトリを作成する BASE_DIR
テンプレートをそのディレクトリ内に保存します。 Djangoは、テンプレートディレクトリに参加します BASE_DIR
使用 os.path.join()
関数。お役に立てれば。
私が投稿したように https://stackoverflow.com/a/40145444/6333418 テンプレートの下でsettings.py内にあるdirリストに追加する必要があります。
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',
],
},
},
]