3
Django 1.6から1.10に古いプロジェクトをアップグレードしました。特定のディレクトリのすべてのtemplatseはロードされなくなりました。Djangoでテンプレートを読み込む順序を指定する方法は?
これらのテンプレートの場所は
/project/templates/userena
にこれらのテンプレートは、テンプレートをオーバーライドする必要がありますされているが、
/usr/local/bin/python2.7/dist-packages/userena
でuserenaライブラリに含まれている私は、テンプレートの読み込みのためのDjangoのドキュメントを読んでいるが、それはありません私には全く意味がありません。
は、現在、私のsettings.pyがあり、この
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
os.path.join(BASE_DIR, 'templates'),
],
'APP_DIRS': False,
'OPTIONS': {
'debug': DEBUG,
'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.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
],
},
},
]
私は/プロジェクト/テンプレート/ userenaからDjangoの負荷テンプレートを持つために私のsettings.pyに変更する必要がありますか?
私は両方のローダーが正確に何をしているのか分かりません。私は順序を入れ替えて動作するかどうか試してみます。 – david
簡潔に申し訳ありません。最初のローダーは、辞書の ''DIRS''キーで指定されたすべてのディレクトリを検索しています。あなたのプロジェクトにインストールしたすべてのアプリケーションで、2番目のアプリケーションです。あなたの特定のケースでは、アプリとローカルのテンプレートディレクトリの両方に同じ名前が付いているので、実際は少し難解です。私は確信していませんが、ファイルシステムローダーが 'project/templates/userena'で探しているので、あなたの現在の注文でうまくいくはずです。テンプレートレンダリングで投稿を更新することはできますか? – martinarroyo
私はすべてのテンプレート設定を同じにしましたが、私は自分のINSTALLED_APPSの順番を入れ替えました。今度はテンプレートが正しく読み込まれます。 – david