我刚刚设置了我的rails 3.2 app以使用carrierwave gem并将文件上传到S3。我没有看到的是每个上传器使用不同桶的能力。有谁知道这是否可能?
答案 0 :(得分:14)
通过fog_directory配置指定存储桶。此配置选项在上传器中定义,可以使用您自己的方法覆盖。
只需将以下内容添加到您的上传器中即可:
def fog_directory
# your bucket name here
end
答案 1 :(得分:8)
carrierwave wiki explains how to use a separate s3 bucket for each uploader:
def initialize(*)
super
self.fog_credentials = {
:provider => 'AWS', # required
:aws_access_key_id => 'YOURAWSKEYID', # required
:aws_secret_access_key => 'YOURAWSSECRET', # required
}
self.fog_directory = "YOURBUCKET"
end
答案 2 :(得分:0)
CarrierWave目前不支持多个存储桶。您可以通过向store_dir
添加前缀(文件夹)来在上传者之间分隔文件。如果这是您想要处理的事情,欢迎提出请求!