所以我有一个模型,照片,我想复制整个模型,包括安装的图像。
old_photo = Photo.find(id)
new_photo = Photo.new(old_photo.attributes)
class Photo
include Mongoid::Document
mount_uploader :image, ImageUploader
end
但是如何复制已安装的图像及其所有版本?即创建照片的精确副本,而不是使用相同的副本。(因为它们可以稍后更改)
他从 aws-s3 gem 询问 AWS::S3::S3Object.copy ,这可以用来实现这个吗?如果是这样,如何?
我正在使用雾连接到 S3,可以使用雾来完成吗?如果是这样,怎么做?
更新:
new_photo = Photo.new(old_photo.attributes)
new_photo.image.download!(old_photo.image_url)
new_photo.store_image!
raise new_photo
=> <#Photo _id: 4f1ff69566eaa70ed800001d, image: nil>
raise new_photo.image
=> https://x.s3.amazonaws.com/uploads/photo/image/4f1ff76566eaa70ed8000020/file.png
知道为什么 new_photo 上的图像为零,而我仍然可以访问它吗?