5
我有一個讀取文件內容併爲其編制索引的應用程序。我將它們存儲在磁盤本身中,但現在我正在使用Amazon S3,因此以下方法不再適用。如何使用CarrierWave從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
類。
我怎樣才能得到真實的文件?
Jacob,來自carrierwave google group用'open(@ document.file.url)解決的問題'too – 2012-08-14 11:08:42
@ document.file.read可能更好,因爲無論使用哪種文件存儲,它都可以工作,也就是說它可以與本地文件系統和S3。 – 2014-05-06 10:45:24
.read並不適用於我們(我們正在使用cloudinary和carrierwave結合使用) – Tibastral 2015-07-15 12:00:17