Django,两个指向同一个文件的ImageField

Django, two ImageField pointing to the same file

我希望我的两个图像字段指向同一张图像。

一次,我将填充一个图像字段。
稍后,我希望另一个 imageField 指向同一个文件。

(如果第一个发生变化,第二个也会更新)

如果重要,文件在 amazon s3。

我可以使用 django-imagekit。

我会用这样的结构来做:

class Image(models.Model):
    img = models.ImageField(upload_to = "images", related_name="+")

class A_model(models.Model):
    image = models.ForeignKey(Image)

class B_model(models.Model):
    image = models.ForeignKey(Image)

这避免了数据库中的冗余,您可能会使用两个图像字段。访问图像非常容易。

注意你必须将关联设置为“+”,因为在这种情况下Django 无法反转关系。