【发布时间】:2023-03-17 10:52:01
【问题描述】:
我正在使用带有 Rails 4 应用程序和 Amazon S3 存储的 Paperclip。在我的开发机器上,该站点运行在
/Users/Jeff/Sites/example.com/web
当我使用 Paperclip 将文件上传到 S3 时,S3 中的远程路径会继承我的本地文件夹结构。
http://s3.amazonaws.com/example_com_bucket/Users/Jeff/Sites/example.com/web/public/assets/uploads/my_class/8/medium/some_image.png?1383060287
为什么会这样?我如何剥离那部分?我尝试更改:path 属性,但这似乎只影响路径的“应用程序”部分(例如在/assets/uploads 之后)我的网站仍在开发中,所以我不关心必须保留链接。
我的配置是...
config.paperclip_defaults = {
:storage => :s3,
:path => '/:class/:attachment/:id_partition/:style/:filename',
:s3_credentials => {
:bucket => 'example_com_bucket',
:access_key_id => '...',
:secret_access_key => '...'
}
}
【问题讨论】:
-
您是否尝试过省略 :path 设置?另一个想法可能是:尝试使用 :url 设置?以下是 Thoughtbot 建议配置的内容:github.com/thoughtbot/paperclip/wiki/Paperclip-with-Amazon-S3
标签: ruby-on-rails amazon-web-services amazon-s3 ruby-on-rails-4 paperclip