Django models 为什么此保存方法不调整图像的大小?

Django models 为什么此保存方法不调整图像的大小?,django-models,django-forms,Django Models,Django Forms,我正在覆盖save方法,以便在上传后调整图像的大小。下面的代码似乎没有调整图像的大小,我仔细检查了媒体文件夹,只有一份上传图像的原始尺寸(900x850)。Django没有抛出任何错误,因此我不确定如何解决该问题。要明确的是,我能够提交表格和上传图像没有任何问题,但图像的大小不是我下面的意图 class Mymodel(models.Model): photo = models.ImageField(upload_to="...", blank=True) def save(self,

我正在覆盖save方法,以便在上传后调整图像的大小。下面的代码似乎没有调整图像的大小,我仔细检查了媒体文件夹,只有一份上传图像的原始尺寸(900x850)。Django没有抛出任何错误,因此我不确定如何解决该问题。要明确的是,我能够提交表格和上传图像没有任何问题,但图像的大小不是我下面的意图

class Mymodel(models.Model):
    photo = models.ImageField(upload_to="...", blank=True)

def save(self, *args, **kwargs):
    # Did we have to resize the image?
    # We pop it to remove from kwargs when we pass these along
    image_resized = kwargs.pop('image_resized',False)

    if self.photo and image_resized:
        basewidth = 300
        filename = self.get_source_filename()
                image = Image.open(filename)
        wpercent = (basewidth/float(image.size[0]))
        hsize = int((float(image.size[1])*float(wpercent)))
        img = image.resize((basewidth,hsize), PIL.Image.ANTIALIAS)
        self.photo = img
        # Save the updated photo, but inform when we do that we
        # have resized so we don't try and do it again.
        self.save(image_resized = True)

    super(Mymodel, self).save(*args, **kwargs)

我做错了什么?

请发布错误日志。。。。很可能您尚未声明get\u source\u filename方法