1

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 => '...'
    }
  }
4

1 に答える 1

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'
于 2015-02-08T20:10:14.200 に答える