django - '功能'对象没有属性' read'

时间:2015-11-14 09:51:01

标签: python django

我使用此代码将我的图片转换为jpeg,我有以下错误

  

'功能'对象没有属性'读'

image = models.ImageField(upload_to=generate_filename)
thumbnail = models.ImageField(upload_to=generate_filename, editable=False, blank=True, null=True)

def save(self, *args, **kwargs):

    if self.image:
        import os
        from PIL import Image 
        im = Image.open(os.path.join(generate_filename))
        im.thumbnail(im.size)
        im.save(outfile, "JPEG", quality=100)

1 个答案:

答案 0 :(得分:0)

我猜generate_filename是一个函数。 Image.open期望字符串或文件对象作为第一个参数。您收到此错误是因为PIL尝试调用非文件对象的对象上的文件对象上存在的read方法。

试试这个:

im = Image.open(os.path.join(generate_filename()))

此外,im.thumbnail(im.size)似乎不太有用,因为您正在创建原始图像大小的缩略图。