刚刚开始看django,可能有很多理解不到位的地方。 只是在这里记录一些报错解决方案(希望不是混出来的)。
Invalid block tag on line 5: ‘raw’. Did you forget to register or load this tag?
这是在尝试引入自己写的标签时遇到的。 教程中的用法是
{% raw %}
...
{% end raw %]
但是实测会报错
Invalid block tag on line 5: 'raw'. Did you forget to register or load this tag?
参考stackoverflow,之后发现正确的用法是
{% block raw %}
...
{% endblock %}
‘my_tag’ is not a registered tag library. Must be one of: admin_list admin_modify admin_static admin_urls cache i18n l10n log static staticfiles tz
使用自己注册的标签的时候遇到的。 教程中的写法为
{% load my_tag %}
本身没有错误,但是教程中没有提到对settings.py的修改。 在settings.py中添加libraries项即可:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'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':{
'change_gender': 'address.templatetags.change_gender',
}
},
},
]
|