2012-06-06 181 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文件。