我有一个rake任务,可以创建一个CSV文件。现在我将这个文件存储到我的/ tmp文件夹中(我正在使用Heroku)。这个CSV文件与任何模型都没有关联,它只是我从几个API中提取的一些数据,再加上我模型中的一些数据。
我想从Heroku下载此文件,但这似乎不可能。所以,我的问题是:为了将该文件上传到Amazon S3,我想查找哪个gem?我见过像Paperclip这样的宝石,但这似乎与模型有关,而这不是我的情况。我只想将我在/ tmp中的CSV文件上传到我的Amazon S3存储桶中。
由于
答案 0 :(得分:1)
您可以使用aws-s3 gem
S3Object.store('filename_in_s3.txt', open("source_file.tmp"), 'bucket_name')
您应该定义tmp文件的确切路径,例如:
open("#{Rails.root}/tmp/source_file.tmp")
答案 1 :(得分:0)
CarrierWave可以通过Fog库直接将您的Ruby应用程序与S3直接连接。 CarrierWave不是在模型级别上运行,而是使用Uploader
类,您可以从API和数据源中剔除,这正是您要完成的任务。