Python 上传和编辑图像时,MissingErrorDelegate与django一起

Python 上传和编辑图像时,MissingErrorDelegate与django一起,python,django,image,wand,magickwand,Python,Django,Image,Wand,Magickwand,为什么这不起作用 从wand.image导入图像 def upload_to_cars(instance, filename): blocks = filename.split('.') ext = blocks[-1] filename = "%s.%s" % (instance.name.replace(" ", "-"), ext) with Image (filename=filename) as img:

为什么这不起作用

从wand.image导入图像

def upload_to_cars(instance, filename):
        blocks = filename.split('.')
        ext = blocks[-1]
        filename = "%s.%s" % (instance.name.replace(" ", "-"), ext)
        with Image (filename=filename) as img:
                img.type='grayscale';
                img.save  
        return filename
class Cars(models.Model):
        name = models.CharField(max_length=200)
        image_file = models.ImageField(upload_to=upload_to_cars, null=True, blank=True)
我想上传一张图片并用django进行灰度缩放。每次我运行此代码时,它都会抛出

`解码此图像格式“Porsche”的代表@ 错误/c.c/ReadImage/544

Porsche是类的名称,应该是上载图像文件的名称


救命啊

其实很简单,问题是,图像会被上传到媒体文件夹中。因此,一个带有
“media/”
的简单字符串将实现以下功能:

def grey():
        with Image (filename=media) as img:
            img.type='grayscale';
            img.save(filename=media)

def upload_to_cars(instance, filename):
    blocks = filename.split('.')
    ext = blocks[-1]
    filename = "%s.%s" % (instance.name.replace(" ", "-"), ext)
    global media
    media = "media/"+filename
    t=Timer(1.0,grey)
    t.start()
    return filename

这真的很简单,问题是,图像被上传到媒体文件夹。因此,一个带有
“media/”
的简单字符串将实现以下功能:

def grey():
        with Image (filename=media) as img:
            img.type='grayscale';
            img.save(filename=media)

def upload_to_cars(instance, filename):
    blocks = filename.split('.')
    ext = blocks[-1]
    filename = "%s.%s" % (instance.name.replace(" ", "-"), ext)
    global media
    media = "media/"+filename
    t=Timer(1.0,grey)
    t.start()
    return filename