我正在尝试在我的Django应用程序中为我的模型添加图像.
models.py
class ImageMain(models.Model):
product = models.ForeignKey(Product)
photo = models.ImageField(upload_to='products')
Run Code Online (Sandbox Code Playgroud)
在开发模式下,每次我尝试通过Django管理员上传图像时,我都会得到:
上传有效图片.您上传的文件不是图像或损坏的图像.
我通过fink安装了libjpeg,然后在ox X 10.5.7上安装了PIL 1.1.6
from PIL import Image
file = open('/Users/Bryan/work/review_app/media/lcdtvs/samsung_UN46B6000_front.jpg', 'r')
trial_image = Image.open(file)
trial_image.verify()
Run Code Online (Sandbox Code Playgroud)
似乎jpg基于该会话是有效的.但是,它不会加载.我尝试过其他jpgs,它们也不起作用.
怎么可能出错?
我能够成功上传一个png文件.
pit*_*ess 16
在PIL已经在系统上编译/安装后你安装了libjpeg吗?也许它无法正确找到解码器?
这里有一组说明,我发现libjpeg和PIL在MacOS上很好地播放(看到最后;看起来你可能需要明确设置解码器的目录):
小智 16
我在Ubuntu服务器遇到了同样的问题,然后你可以通过在PIL之前安装libjpeg-dev来修复它.
sudo apt-get install libjpeg-dev
sudo pip install PIL --upgrade
Run Code Online (Sandbox Code Playgroud)
如果你已经在PIL之后安装了libjpeg-dev.然后你可以先删除PIL,然后尝试重新安装PIL,如下所示.
sudo pip uninstall PIL
sudo apt-get install libjpeg-dev
sudo pip install PIL
Run Code Online (Sandbox Code Playgroud)
它适用于我,希望它适合你.
| 归档时间: |
|
| 查看次数: |
11421 次 |
| 最近记录: |