Django models 保存模型对象时,在同一模型的另一个字段中复制ImageField

Django models 保存模型对象时,在同一模型的另一个字段中复制ImageField,django-models,copy,duplicates,imagefield,Django Models,Copy,Duplicates,Imagefield,我想上传一张图片(其位置存储在下面提到的模型的photo字段中),并且我想通过编程方式将该图片复制到另一个字段缩略图 我尝试了下面课堂图片(models.Model)中提到的方法:。顺便说一下,ResizedImageField有效,我只对photo字段进行了测试。覆盖def save(self、*args、**kwargs)所需的帮助:下面提到的方法 from django_resized import ResizedImageField class Picture(models.Model

我想上传一张图片(其位置存储在下面提到的模型的
photo
字段中),并且我想通过编程方式将该图片复制到另一个字段
缩略图

我尝试了下面
课堂图片(models.Model)中提到的方法:
。顺便说一下,
ResizedImageField
有效,我只对
photo
字段进行了测试。覆盖
def save(self、*args、**kwargs)所需的帮助:
下面提到的方法

from django_resized import ResizedImageField

class Picture(models.Model):
    photo = ResizedImageField('photo', upload_to='photos/%Y/%m/%d', size=[636,331])
    thumbnail = ResizedImageField('thumbnail', upload_to='thumbnail/%Y/%m/%d', size=[150, 100], blank=True, null=True)

    def save(self, *args, **kwargs):
        super(Picture, self).save(*args, **kwargs)
        if self.photo:
            self.thumbnail = ResizedImageField(self.photo)
            self.thumbnail.save()

我认为问题在于您在
self.缩略图.save()
上调用的save方法,请尝试以下方法:

def save(self, *args, **kwargs):
    if self.photo:
        self.thumbnail = ResizedImageField(self.photo)
    super(Picture, self).save(*args, **kwargs)

您可能会发现这很有用

我认为问题在于您调用的save方法
self.thumbnail.save()
,请尝试以下方法:

def save(self, *args, **kwargs):
    if self.photo:
        self.thumbnail = ResizedImageField(self.photo)
    super(Picture, self).save(*args, **kwargs)
你可能会发现这很有用