Django - 上传有效图片

时间:2011-12-20 12:01:44

标签: python django python-imaging-library django-models

我正在使用Ubuntu,Django 1.3,Python 2.7 当我尝试上传某些类型的图片时,我收到此消息:

  

上传有效图片。您上传的文件不是图像或损坏的图像。

PNG和JPG(我需要的格式)正在发生这种情况 tiff和gif(我不会也不会关心)正在工作。

我该怎么办?

4 个答案:

答案 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

时,I​​ntegrityError可能会导致此错误