'my_tag' is not a registered tag library. Must be one of
确保每次修改模板标签时都重新启动 Django 开发服务器(或确保它自己重新启动)。如果服务器没有重新启动,Django 将不会注册标签。
从 django 1.9 开始,您可以在如下设置中加载这些新标签/过滤器:
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', 'app.apptemplates.load_setting', ], 'libraries':{ 'my_templatetag': 'app.templatetags.my_templatetag', } }, }, ]
确保您没有遗漏以下任何步骤:
-
在您的应用程序文件夹中创建一个与models.py 和views.py 处于同一级别的名为“templatetags”的文件夹
-
您的应用程序必须位于 settings.py 中的 INSTALLED_APPS 中
-
templatetags 文件夹必须有 __init__.py
-
重启django服务器
愿君前程似锦,归来仍是少年