2017-11-28 26 views
0

フォグを使用してファイルをアップロードしたりダウンロードしたりするときには、いくつかの方法があります。どちらが好ましいか、それとも重要なのでしょうか?フォグを使ったファイルのアップロードとダウンロード

directory.files.create(key: local_filename, 
         body: File.open(local_path), 
         public: false) 

または

connection.put_object(directory.key, 
         local_filename, 
         File.open(local_path), 
         public: false) 

をアップロードし、ダウンロードするために私は単なる一例を持っているが、それは仕事を得るために 'WB' にファイルのオプションを変更するために必要な:

File.open(Rails.root.join(file.key), 'wb') do |local_file| 
    local_file.write(file.body) 
end 

答えて

0

のバージョンは、カバーの下でconnection.put_objectと呼ぶことになります。そのため機能的には基本的な使い方で同等でなければなりません。つまり、directory.files.createは、多くの場合、使用しているストレージプロバイダを変更したり、そのプロバイダにアップロードする方法が大きく異なるように見える場合でも、「うまくいく」ことができるため、好ましいオプションです。

ダウンロード側では、オブジェクトへの参照を取得するために類似のdirectory.files.getconnection.get_objectの区別があります。 directoryのバージョンが必要で、bodyメソッドを呼び出すと、必要に応じてコンテンツを提供する必要があります。

希望が明確です。

関連する問題