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.fileCarrierWave::Storage::Fog::File

どうすれば実際のファイルを取得できますか?

4

1 に答える 1

12

呼び出す@document.file.readと、CarrierwaveのS3からファイルの内容が取得されます。

于 2012-08-14T05:53:00.427 に答える