2

我的模型.py

class PagePlaceholder(models.Model):
    content_type = models.ForeignKey()
    object_id = models.PositiveIntegerField()
    display_content = generic.GenericForeignKey('content_type', 'object_id')

class Page(models.Model):
    page_name = models.CharField(max_length=1000,default="sample_page")
    placeholder = models.ManyToManyField('PagePlaceholder')

占位符可以通过通用外键关系引用 4 个类中的任何一个。page 与占位符有 many2many 关系,表示一个页面可以包含一堆不同的模型。

和我的 admin.py 相同。

class PagePlaceholderAdmin(admin.ModelAdmin):
    pass

class PageInline(GenericStackedInline):
    model = PagePlaceholder

class PageAdmin(admin.ModelAdmin):
    inlines = [PageInline,]

现在我想要的是在页面管理视图中,显示用于编辑 pageplaceholder 的显示内容对象的表单。试图获得该内联给我一个错误,说该对象不是一个类。admin.py 是否有一个不错的解决方案,或者我是否有必要创建一个新表单并查看以正确显示这些模型表单?

4

0 回答 0