Carrierwave S3在编辑时保留文件

时间:2013-01-05 20:08:47

标签: ruby-on-rails carrierwave

我让Carrierwave正在努力将图像上传到我的网站并将其存储在S3上。

但是,每当用户编辑记录时,即使他们不需要更改图像,他们也必须再次上传图像。我希望继续使用现有图像,除非用户“选择”上传新图像。

2 个答案:

答案 0 :(得分:1)

carrierwave wiki中,您有一个How to: Keep uploaded files (for a specific uploader)部分。我不知道这是否适用于S3,但您可以尝试一下。

要保留所有上传的文件,请使用以下初始化程序:

CarrierWave.configure do |config|
  config.remove_previously_stored_files_after_update = false
end

如果您想在每次上传的基础上进行配置:

class AvatarUploader < CarrierWave::Uploader::Base
  configure do |config|
    config.remove_previously_stored_files_after_update = false
  end

  ...
end

答案 1 :(得分:0)

我不知道我做了什么,但现在这样做了。虽然UI不反映图像仍然存在,但用户无需再次上传图片。