我已经使用Paperclip的rails安装工作了一段时间,并且在最近的部署中它已经坏了。我相信它与gemfile更新同时发生,因为机器上的其他内容都没有改变。错误是:
Command :: file -b --mime :file
[paperclip] Error while determining content type: Command 'file -b --mime :file' returned 1. Expected 0
这是我已经验证有效的png文件。当我在图像上运行'file -b --mime'时,我得到了:
image/png; charset=binary
之后我也得到了这个:
Command :: identify -format %wx%h :file
[paperclip] An error was received while processing: #<Paperclip::Errors::NotIdentifiedByImageMagickError: /tmp/song_waveform_3010520121008-23335-165xag4.png20121008-23335-j8e18p is not recognized by the 'identify' command.>
我做了一个文件,它给了我/ usr / bin所以我尝试在production.rb中设置Paperclip.options [:command_path] =“/ usr / bin /”而没有任何变化。
我想不出为什么会发生这种情况。也许它没有指向正确的目录?我在这里有点迷失。
答案 0 :(得分:21)
很可能这是由可卡因4的API变化造成的,Paperclip还没有赶上。尝试使用早期版本的Cocaine,将此行插入Gemfile:
gem "cocaine", "= 0.3.2"
答案 1 :(得分:4)
添加宝石“可卡因”,“= 0.3.2”
然后捆绑安装消息
Bundler could not find compatible versions for gem "cocaine": In Gemfile:
paperclip (~> 3.0) x86-mingw32 depends on
cocaine (~> 0.4.0) x86-mingw32
cocaine (0.3.2)
答案 2 :(得分:2)
它过去常常适用于pdf和图像,尝试了一个小时左右,之后我用谷歌搜索的所有内容在我的模型中找到了问题has_attached_file:attachment,
:styles =&gt; {:原始=&GT; “125x125#”}
不得不评论这一行,它适用于其他附件,如docx或odt等。
答案 3 :(得分:0)
完成所有更改后,请不要忘记重新启动服务器......!
答案 4 :(得分:0)
对于有类似问题的人,请务必仔细检查是否安装了ImageMagick,或确保不使用'styles'选项。
答案 5 :(得分:0)
我在使用OSX + MAMP + Passenger + Paperclip时遇到此问题,并在设置command_path并确保imagemagick通过brew正确安装后,正确设置temp和上传目录以便乘客可写,这仍然不会工作!
解决方案是在/ Applications / MAMP / Library / bin / envvars中编辑MAMP的envvars文件,并注释掉导出的DYLD_LIBRARY_PATH行。
即改变
的行export DYLD_LIBRARY_PATH
到
# export DYLD_LIBRARY_PATH
然后重新启动MAMP,并在图像正确上传/调整大小时感到兴奋。
答案 6 :(得分:0)
升级到小牛队后我遇到了这个问题。 我最终通过取消链接jpeg并重新链接来解决问题
brew unlink jpeg
brew link jpeg
一切都很好。 BTW,运行Paperclip 4.1