Django,两个ImageField指向同一个文件
问题描述:
我想让我的两个图像域指向相同的图像。Django,两个ImageField指向同一个文件
有一次,我将有一个图像字段填充。
在稍后,我想另一个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无法逆转关系。