我在我的Django項目中有一個python文件,其中包含一個自定義模板標記和一個自定義模板過濾器。我的自定義Django模板過濾器「無效過濾器」錯誤,但沒有任何其他過濾器
我的自定義標籤使用template.loader.get_template()
加載另一個模板文件。這工作得很好......直到我將我的自定義過濾器添加到加載的模板。
現在我得到一個Django「Invalid Filter」TemplateSyntaxError
異常。看着調用堆棧,Django無法加載我的模板過濾器。
這裏的東西變得奇怪。我可以使用其他模板的自定義過濾器。我可以使用由我的自定義標記加載的模板中的任何其他過濾器。但是我不能在我自己的自定義標籤中使用我自己的過濾器。
造成這種情況的明顯原因是我的自定義標記/過濾器文件沒有加載到我的模板HTML中,但我正確加載它。 (因爲當我不加載它,我會得到一個不同的錯誤 - 「無效塊標記」)
我在Python 2.7上運行Django 1.2.3。
[順便說一句,我終於自己找到了答案,但花了我幾個小時,我無法在stackoverflow或google上找到答案,所以我要回答我自己的問題,不必浪費像我一樣多的時間]