在遵循Custom template tag & filters教程时,我收到此错误:
'helpers' is not a valid tag library: Template library helpers not found, tried django.templatetags.helpers,django.contrib.staticfiles.templatetags.helpers,django.contrib.admin.templatetags.helpers
我看到很多关于同一问题的问题,但以下行动都没有解决它。
文件夹结构:
container/
module/
templatetags/
__init__.py
helpers.py
templates/
...
... (views, models, ...)
system/
... (urls, settings, ...)
在system/settings.py
中,包含该模块:
INSTALLED_APPS = (
...
'module',
)
我的帮助源不会从django shell触发任何语法或导入错误:
from django import template
register = template.Library()
@register.filter
def myhelper(value):
return value
最后,调用myhelper
的模板只是:
{% load helpers %}
{{ "hello"|myhelper }}
为什么不起作用?
答案 0 :(得分:2)
感谢sergzach
的想法,我可以通过将其文件从helpers.py
重命名为somethingelse.py
来使我的过滤器正常工作。
Django有自己的helpers来生成管理页面。这可能是命名冲突的原因。