我正在尝试使用delayed_paperclip在后台处理图像大小调整。这个过程在开发中有效,但在生产中我在延迟作业的最后一个错误中得到了这个。
missing required :bucket option\n/home/server_username/project_folder_name/shared/bundle/ruby/2.2.0/gems/paperclip-4.3.0/lib/paperclip/storage/s3.rb:218:in 'bucket_name'...etc
在application.rb
中config.paperclip_defaults = {
:storage => :s3,
:url =>':s3_domain_url',
:s3_protocol => 'https',
:path => '/:class/:attachment/:id_partition/:style/:filename',
:bucket => ENV['s3_bucket_name'],
:s3_credentials => {
:access_key_id => ENV['s3_id'],
:secret_access_key => ENV['s3_key']
}
}
在我的班级档案中
has_attached_file :uploaded_file,
:styles => { original: "990x990#",large: "300x300#", medium: "200x200#", thumb: "100x100#"},
only_process: [:medium]
process_in_background :uploaded_file, queue: "queue_name",
only_process: [:original, :large, :thumb]
上传到s3可以在不使用delayed_paperclip的情况下正常工作。我只是想使用这个库,所以人们不必等待这些上传/抵制。我正在研究Ubuntu14.04。部署w / Capistrano。
我看到有几个地方的存储桶应该在s3_credentials之外,所以我把它移到了现在的位置。所以我在那里尝试过并在s3_credentials内部 - 无论如何都没有改变。
媒体图像上传并立即调整大小并正常工作。
如果有一些我没有提供的信息,请告诉我。