小编Man*_*ble的帖子

在django中上传图像时如何更改图像格式?

当用户从 Django 管理面板上传图像时,我想将图像格式更改为'.webp'。我已经重写了模型的保存方法。Webp 文件在 media/banner 文件夹中生成,但生成的文件未保存在数据库中。我怎样才能做到这一点?

def save(self, *args, **kwargs):
    super(Banner, self).save(*args, **kwargs)
    im = Image.open(self.image.path).convert('RGB')
    name = 'Some File Name with .webp extention' 
    im.save(name, 'webp')
    self.image = im
Run Code Online (Sandbox Code Playgroud)

但是保存模型后,Image 类的实例未保存在数据库中?

我的模型类是:

class Banner(models.Model):
    image = models.ImageField(upload_to='banner')
    device_size = models.CharField(max_length=20, choices=Banner_Device_Choice)
Run Code Online (Sandbox Code Playgroud)

python django image django-models python-imaging-library

7
推荐指数
1
解决办法
1279
查看次数