我正在尝试使用模型中的以下内容重新创建上载的图像...

  Post.all.each do |ym|
      ym.avatar.cache_stored_file!
      ym.avatar.retrieve_from_cache!(ym.avatar.cache_name)
      ym.avatar.recreate_versions!
      ym.save!
  end

不幸的是,我得到以下错误。
(undefined method `body' for nil:NilClass):

我的上传者名为AvatarUploader,适用于我的Post模型。有关如何解决此问题的任何建议?

最佳答案

在只读服务器(Heroku)上使用异步处理时,我遇到了类似的问题。以我为例,在定义文件大小时出现问题,我从雾文件类解析了猴子补丁def size:

module CarrierWave
  module Storage
    class Fog < Abstract
      class File
        def size
          file.nil? ? 0 : file.content_length
        end
      end
    end
  end
end

如果问题仍然存在,以及您从回溯和gems配置发布更多详细信息时,我们可以为您提供更多帮助。

关于ruby-on-rails - 重新创建版本-Carrierwave-fog-aws,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16026350/

10-10 03:53