我正在使用Ubuntu,Django 1.3,Python 2.7 当我尝试上传某些类型的图片时,我收到此消息:
上传有效图片。您上传的文件不是图像或损坏的图像。
PNG和JPG(我需要的格式)正在发生这种情况 tiff和gif(我不会也不会关心)正在工作。
我该怎么办?
答案 0 :(得分:4)
安装PIL!
$ sudo apt-get install python-imaging
(对于Ubuntu或其他Debian发行版)
答案 1 :(得分:2)
不要忘记jpeg-lib!如果没有它,PIL将无法理解它的工作原理。
答案 2 :(得分:2)
如果您收到此错误并且在Ubuntu上安装了PIL,请检查您是否安装了jpeg,freetype,zlib库。
我建议你也使用apt / aptitude而不是pip / easy_install。
如果你真的想用pip安装PIL,请注意PIL设置找不到你安装的库(libjpg ...),因为Ubuntu会安装这些库
这里 - > / usr / lib / x86_64-linux-gnu for 64bit 要么 这里 - > / usr / lib / x86_32-linux-gnu for 32bit
要解决此问题,您可以将其添加到setup.py(当然,您需要从此处下载PIL的副本 - > http://www.pythonware.com/products/pil/)
在第200行附近(你应该看到那里的其他路径)
add_directory(library_dirs, "/usr/lib/x86_64-linux-gnu")
答案 3 :(得分:0)
我发现保存到db
时,IntegrityError可能会导致此错误