自定义Django内联管理员

时间:2011-08-03 16:28:32

标签: django django-admin

假设我有这两个模型:

class Egg(models.Model):
    # some fields

class Spam(models.Model):
    egg = models.ForeignKey(Egg)
    img = models.ImageField()

我计划在管理网站上将垃圾内联到鸡蛋中。问题是我还想要一个非常自定义的方法来上传垃圾邮件图像(like this),就像拥有自己的视图和模板一样。到目前为止,我刚刚得到:

class CustomInline(admin.StackedInline):
    model = Spam
    template = 'admin/app/inline.html' # empty

class EggAdmin(admin.ModelAdmin):
    inlines = [CustomInline, ]

这个想法是在egg admin中使用某种类型的垃圾邮件和自定义图像上传。 (这是可以实现的吗?)

所以问题是:

  1. 我想在模板上注入变量(inline.html上的垃圾邮件对象用于图库)。有没有办法做到这一点?
  2. 可以将某些内容发布到视图(上传过程)吗?或者必须首先在管理网站上注册特定视图?
  3. 我查看过InlineAdmin源代码,但仍然不知道该怎么做/覆盖

    由于

1 个答案:

答案 0 :(得分:2)

使用form属性,您可以继承ModelForm并完全更改内联表单的工作方式。