2012-06-06 125 views
1

我有一个模板过滤器,我在我的模板中加载。模板过滤器崩溃

模板是:

- userprofile/ 
    - templatetags/ 
    - __init__.py 
    - extras.py 

USERPROFILE是我安装的应用程序,它似乎正确导入临时演员。在extras.py

我的模板标签是:

register = template.Library() 

@register.filter 
def minutes_seconds(seconds): 
    """ 
    Format a time in seconds in the MM:SS form. 
    """ 
    return '{:02}:{:02}'.format(int(seconds)/60, int(seconds) % 60) 

在我的Django模板我做:

{% extends 'base.html' %} 
{% load extras %} 
... 
{{ items|minutes_seconds }} 

但是这打击了,我也得到一个TemplateSyntaxError: Invalid Filter。它似乎是一个非常低的级别的错误,因为我可以在模板中导致其他错误(例如,删除{% for %}标签,否则会引发错误),但它似乎几乎在页面均匀之前触发此TempalteSyntaxError渲染。这里出了什么问题?

+0

检查目录“userprofile/templatetags /”,是否有为init.py和extras.py编译python文件? –

+1

格式函数只是Python 2.6+。你可以使用旧版本吗? –

+0

@ zubair89实际上没有那里没有编译的文件(它们是从我手动导入它的提示中创建的)。所以答案是否 – David542

回答

3

检查目录“userprofile/templatetags /”,有没有为init.py和extras.py编译python文件?

如果在那里没有编译的文件,那么这意味着templatetags目录没有被python访问。确保init.py文件在那个目录中,然后重新启动服务器并再次检查.pyc文件。