Django AttributeError:模块'PIL.Image'没有属性'init'

时间:2017-10-20 18:27:05

标签: python django python-3.x vagrant

我是Django的新手。我在使用ubuntu

的流浪盒中使用版本1.11.6

我在我的一个模特中添加了一个ImageField。一切都很好。今天(重启后)相同的代码抛出此错误(每当我调用manage.py时):

`Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
  File "/usr/local/lib/python3.5/dist-packages/django/core/management/__init__.py", line 13, in <module>
    from django.core.management.base import (
... more files in /usr/local/lib/python3.5/dist-packages/..
    from django.core import validators
  File "/usr/local/lib/python3.5/dist-packages/django/core/validators.py", line 507, in <module>
    allowed_extensions=get_available_image_extensions(),
  File "/usr/local/lib/python3.5/dist-packages/django/core/validators.py", line 502, in get_available_image_extensions
    Image.init()
AttributeError: module 'PIL.Image' has no attribute 'init'

来自django的validators.py中抛出的异常

def get_available_image_extensions():
    try:
        from PIL import Image
    except ImportError:
        return []
    else:
        Image.init()
        return [ext.lower()[1:] for ext in Image.EXTENSION.keys()]

我按doc

安装了Pillow
sudo pip3 install Pillow 

在python3控制台中,我可以正确地从PIL导入Image,但它没有init()方法。我该怎么办?

由于

1 个答案:

答案 0 :(得分:1)

这不是最好的答案,但是我卸下了枕头,重新安装了它,删除了__pycache__文件夹中的所有内容,现在它可以正常工作。