我遇到了Paperclip令人讨厌的问题。 Paperclip工作正常,可以上传jpg / gif文件,但它在.targa文件上窒息,错误“识别无法识别”。只是为了确认,它使用jpg / gif / png文件100%工作,我安装了imagemagick并正常工作,只有.tga文件才会出现此错误。
回形针的一般过程是:
使用jpg / png / gif文件,识别可以在文件上运行而无需有效的扩展名(例如.jpg)来识别文件类型。但是,在识别.tga文件时,它需要文件名中的“.tga”扩展名。
问题在于:
当Paperclip创建临时文件时,它会使用类似于:stream.0.1的名称创建。由于此tempfile缺少.tga扩展名,因此identify命令无法解析图像的维度,从而导致“无法识别”。
我不确定如何修复此问题,我能想到的最好的想法是使用常规的File.new命令而不是Tempfile.new来创建具有随机名称但正确文件的临时文件延期。这还需要在自定义代码中修补以在处理完成后删除文件,而不是依赖Ruby的内置功能来在使用后删除临时文件。
有没有人对我可以解决的最佳方法有一些想法?
答案 0 :(得分:0)
这是Paperclip中的一个错误,已修复。更多细节可以在这里找到:
http://groups.google.com/group/paperclip-plugin/browse_thread/thread/7fd7a8d7bab696a7