を実行するときに罰金されているではない...Jinja2のテンプレート作成のオプションは、私は次のエラーが表示され、テストでの作業が、サーバー
ERRORS:
?: (templates.E001) You have 'APP_DIRS': True in your TEMPLATES but also specify 'loaders' in OPTIONS. Either remove APP_DIRS or remove the 'loaders' option.
...ジャンゴ1.11とその標準的なテストで、すべてのテストスイートを実行しようとしますランナー。
manage.py runserver
ただし、正常に動作します。
エラーをjinja2テンプレートに戻しました。私のジャンゴテンプレートの設定は次のようになります。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
'DIRS': [os.path.join(BASE_DIR, 'jinja2')],
'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',
],
'environment': 'mysite.jinja2.environment',
},
},
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"DIRS": [os.path.join(BASE_DIR, 'templates')],
"APP_DIRS": True,
'OPTIONS': {
'debug': DEBUG,
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
'mysite.context_processors.app_rendering_ctx',
],
},
},
]
あなたはそこOPTIONS
dictsのいずれかにはloaders
キーはませんので、エラーが真剣に混乱して表示されます。
これは、コンテキストプロセッサや環境とは関係ありません。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
'DIRS': [os.path.join(BASE_DIR, 'jinja2')],
'OPTIONS': {
#stuff
},
},
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"DIRS": [os.path.join(BASE_DIR, 'templates')],
"APP_DIRS": True,
'OPTIONS': {
#stuff
},
},
]
しかし、今、私はそう訪問し、私のアプリのディレクトリ内jinja2
テンプレートを見つけることができません:それは、最初のエントリからAPP_DIRS
キーを削除する
は、テストが実行できますjinja2
テンプレート...に関連していますサイトはTemplateNotFound
のエラーを表示します(もちろん!)。
jinja2テンプレートエンジンは、loaders
キーを独自のオプションdictに動的に付加しますか?そして、なぜサーバがうまく動くときに、テストランナーがこれで失敗するのですか?