纸夹::错误::未被ImageMagick识别错误:

6

使用paperclip上传图片出错:

命令:: identify -format %wx%h '/tmp/103120121106-20384-i7dnzy.png[0]' [paperclip] 处理时发生错误: # < Paperclip::Errors::NotIdentifiedByImageMagickError: /tmp/103120121106-20384-i7dnzy.png无法被'identify'命令识别。>

我找到了识别程序:

joinall@nxbbs-server:/nxbbs$ type identify  
identify is hashed (/usr/local/bin/identify) 
joinall@nxbbs-server:/nxbbs$ convert logo: 2.jpg 
joinall@nxbbs-server:/nxbbs$ identify  2.jpg
2.jpg GIF 640x480 640x480+0+0 8-bit sRGB 256c 31.7KB 0.000u 0:00.000

在 config/environments/development.rb 文件中

 Paperclip.options[:command_path] = "/user/local/bin"

在app/models/user.rb文件中。
attr_accessible :avatar
has_attached_file :avatar, :styles=> {:s120 => "120x120>",:s48 => "48x48>",:s16 => "16x16>"}

请帮我,我找不到问题所在。


你的development.rb文件中路径错误。应该是/usr/而不是/user/ - Chloe
2个回答

5

我曾遇到类似的问题,后来发现是因为我使用的是Paperclip 2.5版本,而Paperclip内部使用了cocaine gem。但Cocaine 0.4.2不兼容之前的版本,所以我将它降级至0.3.2版本,问题就神奇地解决了。在你的Gemfile里添加以下代码即可:

gem 'cocaine', '0.3.2'

并运行

bundle update

是的,cocaine和paperclip版本不匹配存在问题。https://github.com/thoughtbot/cocaine/issues/28 - Felipe Sabino
4
截至2014年1月2日,Paperclip 3.5.2需要Cocaine ~> 0.5.3。 - David Rhoden

3

给自己和其他通过搜索此类错误类型到达此处的人的一条提示:如果Imagemagick无法识别文件类型,则会抛出此错误。

当用户尝试上传图像时,我遇到了这个错误。我一直不能重现这个问题,而且肯定不是未安装依赖项的问题。事实证明,他们正在尝试上传未被识别的MIME类型--相机原始图像。


类似的 - 在通过几个版本的升级后,我们的测试套件出现了错误,与测试中使用的旧图像有关。更换为新的图像,一切正常。 - Chrissy H

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接