【发布时间】:2019-01-19 10:20:25
【问题描述】:
我的项目结构如下:
kjp_app/
templatetags/
__init__.py
myfilters.py
在 myfilters.py 我有这个代码:
from django import template
register = template.Library()
@register(name='rep_slash')
def rep_slash(value):
if '' in value:
return value.replace('','/')
在相应的 html 文件中,我加载了 myfilters 并使用了rep_slash,如下所示,
{% extends 'kjp_app/base.html' %}
{% load myfilters %}
{% block body_block %}
{% if client_rec %}
<table>
{% for rec in client_rec %}
<tr>
<td>{{ rec.client_name }}</td>
<td>{{ rec.client_designation|rep_slash }}</td>
<td>{{ rec.client_job_location }}</td>
<td>{{ rec.client_phone_num }}</td>
</tr>
{% endfor%}
</table>
{% endif %}
{% endblock %}
运行服务器时出现以下错误:
File "D:\Django_projects\Pradeep Website\kjp_enterprise\kjp_app\templatetags\myfilters.py", line 5, in <module>
@register(name='rep_slash')
TypeError: 'Library' object is not callable
[19/Jan/2019 14:57:45] "GET /kjp_app/view_clients HTTP/1.1" 500 151123
I am using Django 2.1.5 and python3.7
【问题讨论】:
标签: python django typeerror django-template-filters