我有一个ModelAdmin,我需要插入一些不属于模型的html-snippet(它是一个java-applet)。有没有办法做到这一点?
答案 0 :(得分:2)
你有几个选择。如果applet与其中一个表单字段相关,那么您可以创建一个包含applet的自定义小部件。另一种方法是覆盖模型更改表单使用的模板并包含applet。模板应位于模板目录中的admin/app_name/model_name/change_form.html
,其中app_name
和model_name
将替换为模型的相应值。
答案 1 :(得分:1)
我倾向于做很多这类事情,这几乎就是你想要的东西:
class SomeModelAdmin(admin.ModelAdmin):
...
list_display = (
'visible',
'thumbnail',
'size',
'url',
)
...
def thumbnail(self, obj):
return u'<img src="%s" />' % obj.url
thumbnail.allow_tags = True
... et voila,ad-hoc HTML片段。 obj
是有问题的模型实例。就我个人而言,我觉得这比Winitets,ModelForms等无休止地继承子类更灵活 - 你的里程可能会因你对管理站点的处理方式而有所不同,或者你是否更加正统的面向对象说服;在任何情况下都知道如何做到这一点很有帮助。