微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – Rails:从URL保存文件并将其保存到Amazon S3

从给定的URL下载文件并立即将其上传到Amazon S3的更直接的方法是什么(将有关该文件的一些信息保存到数据库中,如名称,大小等)?

现在,我没有使用Paperclip和Carrierwave.

谢谢

解决方法

直截了当:

require 'open-uri'
require 's3'

amazon = S3::Service.new(access_key_id: 'KEY',secret_access_key: 'KEY')
bucket = amazon.buckets.find('image_storage')
url = 'http://www.example.com/url'
download = open(url)

file = bucket.objects.build('image.png')
file.content = (File.read download)

if file.save
  # Make a new ActiveRecord::Base class for this
  LogFile.create(size: download.size,type: download.type,name: url)
end

https://github.com/qoobaa/s3

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐