5

我有一个应用程序可以读取文件的内容并将其编入索引。我将它们存储在磁盘本身中,但现在我使用的是 Amazon S3,因此以下方法不再适用。

是这样的:

def perform(docId)
    @document = Document.find(docId)
    if @document.file?

      #You should't create a new version
      @document.versionless do |doc|
        @document.file_content = Cloudoc::Extractor.new.extract(@document.file.file)
        @document.save
      end

    end
  end

@document.file返回FileUploader, 并doc.file.file返回CarrierWave::Storage::Fog::File类。

我怎样才能得到真正的文件?

4

1 回答 1

12

调用@document.file.read将使您从 Carrierwave 中的 S3 获取文件的内容。

于 2012-08-14T05:53:00.427 回答