我正在研究Django和Jinja模板的新手。我能够从上下文打印变量但不能使用Jinja的其他功能。
当我在页面上执行{{1 + 1}}时。它显示:
无法解析余数:'+1'来自'1 + 1'
我正在尝试生成随机编号。通过{{range(1,51)|随机}},由this回答。但它会抛出错误:
无法解析某些字符:range |(1,51)| |随机
在settings.py中:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
'DIRS': [],
'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',
],
},
},
]
答案 0 :(得分:0)
问题是你没有在Django项目中激活Jinja2模板。请正确设置模板引擎。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
...
答案 1 :(得分:0)
TEMPLATES = [{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
'BACKEND': 'django.template.backends.django.DjangoTemplates', # remove this line
'DIRS': [],
'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',
],
},
}]
在第3行中,您使用Django Template Engine覆盖键BACKEND
。