Django 使用GenericForeignKey在模型的管理窗体中显示相关内联线
我有以下具有一般关系的简单模型: 在产品的管理表单上显示内联ImageLink对象非常简单。证明了这一点 有人能建议如何在图像模型的管理表单中内联相关的图像链接吗Django 使用GenericForeignKey在模型的管理窗体中显示相关内联线,django,django-admin,Django,Django Admin,我有以下具有一般关系的简单模型: 在产品的管理表单上显示内联ImageLink对象非常简单。证明了这一点 有人能建议如何在图像模型的管理表单中内联相关的图像链接吗 重要更新:更新了模型示例,因为如Daniel所说,与上一个示例相比,它不需要内联显示对象。您没有任何相关产品可内联显示。与普通外键一样,通用外键是一对多的,关系的“一侧”是包含外键字段的一侧。因此,在您的情况下,每个图像仍然只有一个产品,因此没有要显示的内联集。必须使用generic.GenericTabularInline在产品表单
重要更新:更新了模型示例,因为如Daniel所说,与上一个示例相比,它不需要内联显示对象。您没有任何相关产品可内联显示。与普通外键一样,通用外键是一对多的,关系的“一侧”是包含外键字段的一侧。因此,在您的情况下,每个图像仍然只有一个产品,因此没有要显示的内联集。必须使用generic.GenericTabularInline在产品表单上内联显示ImageLink对象,如中所示 但是,如果我们需要在图像表单上内联显示相关的ImageLink,可以使用admin.TabularInline类的简单子级来完成
这是一个非常简单的解决方案。我认为我没有马上猜出来是愚蠢的。你完全正确。我的例子有错误。我现在知道如何解决我的问题了。
class Image(models.Model):
image = models.ImageField(upload_to="images")
class ImageLink(models.Model):
image = models.ForeignKey(Image)
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey("content_type", "object_id")
class Product(models.Model):
name = models.CharField(max_length=100)