1

我正在使用帶有Rails 4應用程序和Amazon S3存儲的Paperclip。在我的機器,該網站是在回形針+ AWS S3,使用我的本地路徑前綴固定路徑

/Users/Jeff/Sites/example.com/web 

運行當我上傳文件回形針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 => '...' 
    } 
    } 
+0

您試過忽略:路徑設置?另一個想法也許:嘗試使用:網址設置?以下是Thoughtbot建議配置的內容:https://github.com/thoughtbot/paperclip/wiki/Paperclip-with-Amazon-S3 – DiegoSalazar

回答

0

我有,當我使用:url參數,我應該用:path參數都被這完全一樣的問題:

has_attached_file :primary_photo, 
        :styles => ..., 
        :storage => :s3, 
        :s3_host_name => 's3-us-west-2.amazonaws.com', 
        :s3_credentials => 'config/s3.yml', 
        :url => '/product/:attachment/:id/:style/:filename' 

我固定它通過更改我的配置爲:

has_attached_file :primary_photo, 
        :styles => ..., 
        :storage => :s3, 
        :s3_host_name => 's3-us-west-2.amazonaws.com', 
        :s3_credentials => 'config/s3.yml', 
        :path => '/product/:attachment/:id/:style/:filename'