私はCarrierWaveとFogを使用して、S3のActiveRecordモデルへの添付ファイルを保存しています。私はURLを生成するためにそれらを使用することができますが、私は実際にファイルを読み取るための方法を見つけることはできません。FogとCarrierWaveを使用してファイルオブジェクトを読み取る方法はありますか?
これはフォグの宝石でさえあるでしょうか、それともS3の宝石を使用する必要がありますか?
私はCarrierWaveとFogを使用して、S3のActiveRecordモデルへの添付ファイルを保存しています。私はURLを生成するためにそれらを使用することができますが、私は実際にファイルを読み取るための方法を見つけることはできません。FogとCarrierWaveを使用してファイルオブジェクトを読み取る方法はありますか?
これはフォグの宝石でさえあるでしょうか、それともS3の宝石を使用する必要がありますか?
が必要です。我々はCarrierWaveのmount_uploader
メソッドを使用して追加されたattachment
と呼ばれるフィールドを持っているmymodelという呼ばれるモデルを持っている場合は、私たちは、次の操作を実行できます。
obj = MyModel.first
contents = obj.attachment.read
これは、ファイルの実際の内容を取得します。 this docをチェックしてください。
あなたはただあなたがアップローダオブジェクトにread
メソッドを使用することができますopen-uri
require 'open-uri'
file_contents = open(string_url) {|f| f.read }
SUPER、あなたの言うとおりに動作します。ありがとう! – AKWF
明らかに良い+1 – apneadiving
いいえ、これはlocal_rootが設定されたローカルに保存されたファイルでは機能しません。 – AKWF