关于'selffilter' is not a registered tag library. Must be one of:

报错代码:

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

 解决方法:

 

 

错误可能:

1. 在你的app目录下新建templatetags文件夹里没创建__init__.py定义为包

 

2. 程序编写问题

在templatetags下创建myfilter.py 文件

 

html文件中

 

3.settings.py未设置


 上面是摘自https://blog.csdn.net/qq_40326481/article/details/80342480

补充其他的方法:

不知道是我的版本问题还是必须的这么写,我在检查了上面的几种方法之后还是报相同的错误,找了好久,终于找到了出错地地方

原来的代码:

from django import template
registor = template.Library() #注册

#告诉Djiango这个函数的名字是mmd
@registor.filter(name="mmd")
def mmd1(arg,name):
    return "%s亲了%s一下"%(arg,name)

 

修改:由于我的单词写成了registor,所以一直报错。

把单词改为register就不报错了,难道统一了入口?

from django import template
register = template.Library() #注册

#告诉Djiango这个函数的名字是mmd
@register.filter(name="mmd")
def mmd1(arg,name):
    return "%s亲了%s一下"%(arg,name)

 注意在调用函数的时候,

{% load selffilter %}
<p>{{ dict.dxx|mmd:"xpg" }}</p>

 

 一定不要加上空格。

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/accolade/p/10782162.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值