2013-02-22 69 views
0

我有嘔吐一些HTML類屬性:Django的類屬性吐痰HTML模型的管理頁面

class Task (models.Model): 
    def test(self): 
     return """<img border="0" alt="" src="/%s/%s/%s" />""" % (UPLOADS_DIR, GRAPH_DIR, "task.svg") 

    test.allow_tags = True 

我怎樣才能輕鬆地養活返回的HTML到模型的管理頁面?它適用於list_display()頁面。我試圖爲其模型頁面的test()創建一個自定義小部件,但是我的小部件未能真正顯示圖像。我不想通過爲此模型製作自定義模板來解決此問題。基本上,我正在尋找一種自定義窗體或小部件,它只是將任何測試吐出的HTML放入模型的管理頁面而不修改屬性的輸出。

有什麼想法?

非常感謝!

今朝

回答

0

我知道你並不熱衷,但我認爲首要的模板將是最好的一段路要走。

小部件與特定字段相關聯,但您的test()方法不是。再次,Django表單只關心字段 - 它們是關於將數據發送回服務器 - 而不是呈現數據 - 這是視圖和模板。

通過覆蓋模板來做到這一點不應該太亂。如果你想要它真的很乾淨,你可以簡單地擴展現有的模板,然後在底部添加你的領域。在覆蓋管理模板上看看docs。覆蓋特定模型的特定模板非常簡單。

+0

我希望有一個簡單的方法通過一個小部件來完成它。我最後修改了這個昨晚的模板並且工作正常,但我覺得將模板保留在模板之外可能會好得多。 :( – Seperman 2013-02-22 17:55:42