我有一个名为Book的模型,它有一个cover_image。
mount_uploader :cover_image, BookPixUploader
上传者声明如下:
class BookPixUploader < CarrierWave::Uploader::Base
# Include RMagick or ImageScience support:
include CarrierWave::RMagick
CarrierWave::Uploader::ExtensionWhitelist
# include CarrierWave::MiniMagick
# include CarrierWave::ImageScience
# Choose what kind of storage to use for this uploader:
#storage :file
storage :fog
# Override the directory where uploaded files will be stored.
# This is a sensible default for uploaders that are meant to be mounted:
def store_dir
"system/uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
....
我想保存一本新书:
newbook = book.dup
newbook.save
但它没有将新图像上传到亚马逊S3。
我试过了:
newbook = book.dup
newbook.cover_image = book.cover_image
newbook.save
有什么想法吗?
答案 0 :(得分:1)
newbook = book.dup
newbook.remote_cover_image_url = book.cover_image.url
newbook.save
如果这不起作用,您可能需要考虑以另一种方式复制属性,因为book.dup
可能会对上传者产生奇怪的影响。