rails attachment_fu public_filename问题

时间:2009-10-06 23:50:49

标签: ruby-on-rails attachment-fu

attachment_fu会生成错误的public_filename。

>> pic.thumbnails
=> ProductPicture id: 12331, product_id: nil, parent_id: 12330, content_type: "image/png", filename: "b_9788994035109_mid.png", thumbnail: "mid", size: 16562, width: 205, height: 205, created_at: "2009-10-05 02:43:50", updated_at: "2009-10-05 02:43:50", 
ProductPicture id: 12332, product_id: nil, parent_id: 12330, content_type: "image/png", filename: "b_9788994035109_thumb.png", thumbnail: "thumb", size: 2300, width: 52, height: 52, created_at: "2009-10-05 02:43:51", updated_at: "2009-10-05 02:43:51"
>> pic
ProductPicture id: 12330, product_id: 23236, parent_id: nil, content_type: "image/gif", filename: "b_9788994035109.gif", thumbnail: nil, size: 73990, width: 400, height: 400, created_at: "2009-10-05 02:43:50", updated_at: "2009-10-05 02:43:50"
>> pic.thumbnails
=> ProductPicture id: 12331, product_id: nil, parent_id: 12330, content_type: "image/png", filename: "b_9788994035109_mid.png", thumbnail: "mid", size: 16562, width: 205, height: 205, created_at: "2009-10-05 02:43:50", updated_at: "2009-10-05 02:43:50", ProductPicture id: 12332, product_id: nil, parent_id: 12330, content_type: "image/png", filename: "b_9788994035109_thumb.png", thumbnail: "thumb", size: 2300, width: 52, height: 52, created_at: "2009-10-05 02:43:51", updated_at: "2009-10-05 02:43:51"
>> pic.public_filename
=> "/product_pictures/0001/2330/b_9788994035109.gif"
>> pic.public_filename(:mid)
=> "/product_pictures/0001/2330/b_9788994035109_mid.gif"

当实际类型为'.png'时,它生成“.gif”而不是“.png”(gif是父类型)

这适用于我的开发机器,但不适用于我的生产机器。

有什么想法吗?

感谢。

萨姆

1 个答案:

答案 0 :(得分:0)

我明白了。

我没有指定:attachment_fu中的处理器,它使用任何安装的处理器。 我的开发机器有ImageScience和RMagick,我的生产机器只有RMagick。 ImageScience将gif调整为png,因为它无法很好地处理gif。