0

我有一个会吐出一些 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 放入模型的管理页面,而不修改属性的输出。

有什么想法吗?

非常感谢!

时代

4

1 回答 1

0

我知道您并不热衷,但我认为覆盖模板将是最好的方法。

小部件与特定字段相关联,但您的test()方法不是。再次,django 表单只关心字段——它们是关于将数据发送回服务器——而不是呈现数据——即视图和模板。

通过覆盖模板不应该太麻烦。如果您希望它真正干净,您可以简单地扩展现有模板,然后在底部添加您的字段。查看有关覆盖管理模板的文档。覆盖特定模型的特定模板非常简单。

于 2013-02-22T10:00:17.127 回答