Carrierwave转换但image_tag调用是旧名称

时间:2014-11-11 16:24:04

标签: ruby-on-rails-3.2 carrierwave

上传者正确处理

  version :thumb do
    process :resize_to_limit => [200, 200]
    process :convert => 'jpg'
    def filename
      super.chomp(File.extname(super)) + '.jpg' 
    end
  end

在商店目录中,上传的文件及其缩略图就在那里。缩略图转换为jpg。

然而显示视图

<%= image_tag @docimage.production_file_url(:thumb).to_s %>

正在渲染原始名称的路径

<img alt="Thumb_30x30_2mb" src="/uploads/docimage/yadayadayada/thumb_30x30_2mb.tif" />

我在这里错过了处理新扩展程序的内容。

1 个答案:

答案 0 :(得分:0)

我想我期待一个现有的方法来处理这个案子。但鉴于解决方案的简洁性,这是错误的。

def edited_thumb
  start_path = self.production_file_url(:thumb) 
  edited_thumb  = start_path.sub(/[^.]+\z/,"jpg")
end

然后,在视图中

<%= image_tag @model.edited_thumb %>