我使用Paperclip获取存储在Amazon S3上的图像的宽度和高度,如下所示:
Paperclip::Geometry.from_file(user.avatar.url)
它一直工作正常,但在文件名中有空格的图像上出错:
Paperclip::NotIdentifiedByImageMagickError: my_amazon_s3_path_is_here/Martian landslide.jpg?1294675113 is not recognized by the 'identify' command.
当您在浏览器中转到URL时,图像加载正常。我该怎么做才能解决这个问题?
编辑:忘记提及文件名中没有空格的图像正常工作,因此Imagemagick / Paperclip设置不存在问题。答案 0 :(得分:1)
你需要URL编码网址吗?例如,用%20
答案 1 :(得分:0)
通常当你看到:
not recognized by the 'identify' command.
这意味着ImageMagick设置不正确。其他图像是否正常工作?
你有没有调整过这个设置?
Paperclip.options[:command_path] = "/opt/local/bin"
需要指向安装标识的位置。在命令行中,您可以使用以下命令确定:
which identify
答案 2 :(得分:0)
我有同样的问题和文件'Снимокэкранаот2013-02-2814:36:49.png'返回相同的错误。但它在heroku上正常工作。所以我认为问题在于ImageMagick