升级到Django 3.0后,我得到以下value = (value ? 0 : 1) - value;
:
TemplateSyntaxError
这是我的模板
In template /Users/alasdair//myproject/myapp/templates/index.html, error at line 1
'staticfiles' is not a registered tag library. Must be one of: admin_list admin_modify admin_urls cache i18n l10n log static tz
答案 0 :(得分:8)
{% load static %}
代替{% load staticfiles %}
settings.py
文件末尾写以下行STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
VENV_PATH = os.path.dirname(BASE_DIR)
STATIC_ROOT = os.path.join(VENV_PATH, 'static_root')
答案 1 :(得分:5)
这对我使用 django 3.1.4 有效。
{% load static %}
<link rel"stylesheet" href = "{% static 'style.css' %}">
答案 2 :(得分:2)
这与我合作,将{% load static from staticfiles %}
替换为{% load static %}
其中:
转到您的虚拟环境“ venv” /目录中的/lip/python3.X/site-packages/leaflet/templates/leaflet/admin/widget.html和所有。 HTML 文件
答案 3 :(得分:2)
staticfiles 已更改为 static
您可以使用setting.py中的空闲代码进行注册
在您的 TEMPALTE 设置中添加此代码
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'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',
],
'libraries' : {
'staticfiles': 'django.templatetags.static',
}
},
},
]
注意你可以找到你没有的图书馆
答案 4 :(得分:0)
{% load staticfiles %}
和{% load adminstatic %}
分别是deprecated in Django 2.1和removed in Django 3.0。
如果模板中包含以下任何内容:
{% load staticfiles %}
{% load static from staticfiles %}
{% load adminstatic %}
您应该将标签替换为:
{% load static %}