RoR-Carrierwave + S3,通过API存储图片网址

时间:2018-07-30 14:35:29

标签: ruby-on-rails ruby amazon-s3 carrierwave

我正在使用载波将图像上传 S3 的系统。 上传图片的方式有两种:

  • 从文件上传到S3
  • 通过API手动上传

从文件上传的效果很好。文件以base64格式格式化,然后发送到正在处理的文件,并通过载波将其上传到S3。

我的问题从这里开始,并手动上传。前端将图像上传到S3并将图像URL发送到服务器。 如何将这些网址存储在carrierwave中?像是简单的字符串到图像列还是还有其他内容?

那么,如何以及在哪里保存S3图片网址?


我尝试过这样的事情:

ElementImage.create(:image => image_params[:image_url])

还有image.urlimage.base_path

1 个答案:

答案 0 :(得分:0)

找到了我想要的东西:CarrierWave docs for "Upload remote image urls to your seedfile"


“ ......您可以使用remote_[your_image_attribute_name]_url

轻松上传远程图像

所以,就我而言:

ElementImage.create!(remote_image_url: image_params[:image_url])

如果位置的网址无效,CarrierWave应该抛出错误。