Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 使用GenericForeignKey在模型的管理窗体中显示相关内联线_Django_Django Admin - Fatal编程技术网

Django 使用GenericForeignKey在模型的管理窗体中显示相关内联线

Django 使用GenericForeignKey在模型的管理窗体中显示相关内联线,django,django-admin,Django,Django Admin,我有以下具有一般关系的简单模型: 在产品的管理表单上显示内联ImageLink对象非常简单。证明了这一点 有人能建议如何在图像模型的管理表单中内联相关的图像链接吗 重要更新:更新了模型示例,因为如Daniel所说,与上一个示例相比,它不需要内联显示对象。您没有任何相关产品可内联显示。与普通外键一样,通用外键是一对多的,关系的“一侧”是包含外键字段的一侧。因此,在您的情况下,每个图像仍然只有一个产品,因此没有要显示的内联集。必须使用generic.GenericTabularInline在产品表单

我有以下具有一般关系的简单模型:

在产品的管理表单上显示内联ImageLink对象非常简单。证明了这一点

有人能建议如何在图像模型的管理表单中内联相关的图像链接吗


重要更新:更新了模型示例,因为如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)