'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',

            }
    },
},
]

 

确保您没有遗漏以下任何步骤:

  1. 在您的应用程序文件夹中创建一个与models.py 和views.py 处于同一级别的名为“templatetags”的文件夹

  2. 您的应用程序必须位于 settings.py 中的 INSTALLED_APPS 中

  3. templatetags 文件夹必须有 __init__.py

  4. 重启django服务器

posted @ 2021-06-04 11:09  Jerry`  阅读(444)  评论(0编辑  收藏  举报