我已经安装了jinja2,在那个“DIRS”停止工作之后(我必须手动包含它们)。
更改“应用程序目录”没有帮助
模板如下所示:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
'APP_DIRS': False,
'DIRS': ['main/templates', 'shop/templates'],
'OPTIONS': {
'environment': 'django_test.create_jinjia_env.environment',
'autoescape': True,
'auto_reload': 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',
],
},
},
]
如果不在DIRS中包含模板,则会抛出相同的错误
没有找到这样的问题。提前谢谢!
最佳答案
Django管理应用程序没有Jinja模板。如果您希望使用Jinja和管理应用程序,则需要在TEMPLATES
设置中同时包含这两个引擎:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True, # This allows Django to find the templates in the admin app
'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',
],
},
},
{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
# The rest of your Jinja2 settings.
},
其次,当
APP_DIRS
为真时,Jinja2后端looks for templates in a jinja2
subdirectory。这意味着您应该将模板放在main/jinja2
和shop/jinja2
中,而不是放在main/templates
和shop/templates
中。关于python - 在/admin/安装jinja2 TemplateDoesNotExist之后,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44890665/