my models.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个类中的任何一个。 页面与占位符有很多关系,说一个页面可以包含一堆不同的模型。
和我的admin.py相同。
class PagePlaceholderAdmin(admin.ModelAdmin):
pass
class PageInline(GenericStackedInline):
model = PagePlaceholder
class PageAdmin(admin.ModelAdmin):
inlines = [PageInline,]
现在我想要的是在页面管理视图中,以显示用于编辑页面持有者的显示内容对象的表单。试图获取内联给我一个错误,说对象不是一个类。 使用admin.py有一个不错的解决方案,还是我需要创建一个新的表单和视图来正确显示这些模型表单?