我正在從Paperclip移動到CarrierWave和Cloudinary,我想將我之前在S3上的所有圖像存儲移到Cloudinary。CarrierWave/Cloudinary給出一個URL上傳圖像
我目前的做法是這樣:
my_model.cloudinary_logo = open(my_model.logo.url)
my_model.save
但這種力量我要下載的文件,然後上傳到cloudinary,我不能只是給它的網址呢?
另一種方法是這樣做的:
cloudinary_uploaded_file = Cloudinary::Uploader.upload(my_model.logo.url)
my_model.write_attribute :c_image, "v#{cloudinary_uploaded_file['version']}/#{cloudinary_uploaded_file['public_id']}.#{cloudinary_uploaded_file['format']}"
但是,這在我看來是一個小哈克......
在他們的GitHub頁面尋找,似乎你只需要在模型上設置了'attribute_name_here_url'。 – jcm 2014-09-30 13:13:37
你在哪頁上找到了那個? – 2014-09-30 13:14:27
有一個「從遠程位置上傳文件」部分。 https://github.com/carrierwaveuploader/carrierwave – jcm 2014-09-30 13:24:19