Ответ 1
Просто установите его так:
Paperclip::Attachment.default_options[:url] = ':s3_domain_url'
Или вот так:
Paperclip::Attachment.default_options.merge!(
:url => ':s3_domain_url'
)
Документ скрепки о параметрах URL:
Вы можете выбрать, чтобы имя ковша размещалось в доменном стиле (bucket.s3.amazonaws.com) или в стиле пути (s3.amazonaws.com/bucket).
Как выглядела бы такая настройка, чтобы на самом деле было указано имя ведра в домене? Я не могу заставить paperclip генерировать URL-адреса, такие как bucket.s3.amazonaws.com, а не s3.amazonaws.com/bucket.
Просто установите его так:
Paperclip::Attachment.default_options[:url] = ':s3_domain_url'
Или вот так:
Paperclip::Attachment.default_options.merge!(
:url => ':s3_domain_url'
)
Добавьте :url
и :path
в параметры Paperclip
по умолчанию в application.rb
или environment.rb
config.paperclip_defaults = {
storage: :s3,
s3_credentials: {
bucket: ENV['MY_S3_BUCKET_NAME'],
access_key_id: ENV['AWS_ACCESS_KEY_ID'],
secret_access_key: ENV['AWS_SECRET_ACCESS_KEY']
},
url: ':s3_domain_url', # ADD THIS
path: '/:class/:attachment/:id_partition/:style/:filename' # ADD THIS
}
Если вы указали имя ведра, то вы можете создать URL-адрес .s3.amazonaws.com/object....
но если он не совместим с DNS, вы не можете создать его, как хотите.
Спасибо