首页 > 解决方案 > Cloudinary::CarrierWave 如何在 Cloudinary 中选择上传文件夹

问题描述

我尝试使用该模块Cloudinary::CarrierWave,但我所有的图像都存储在云的根文件夹中。

我希望我的所有文件都转到特定的远程文件夹。

我在课堂上尝试这个:

class PhotoUploader < CarrierWave::Uploader::Base
    include Cloudinary::CarrierWave
    def storage_identifier
        'specific_folder'
    end
end

我知道有一些选项Cloudinary::Upload.upload,但是当我在 ruby​​ on rails 中使用简单的形式时,我无法使用这种方法。

有没有人有解决这个问题的想法?

标签: ruby-on-railscarrierwavecloudinary

解决方案


将 Carrierwave 与服务器端上传一起使用时,您可以使用如下代码:

classPictureUploader < CarrierWave::Uploader::Base      
include Cloudinary::CarrierWave
 ...

  def public_id
    return "my_folder/" + model.short_name
   end  
 end

如果您使用的是客户端上传,则可以在构建上传标签时设置文件夹参数:

<%= f.cl_image_upload(:image, :folder => "my_folder") %>


推荐阅读