2013-06-19 3 views
0

Это работало до этого, или так я считаю.Скрепка: неправильное ведро используется от yml

По какой-то причине, в моей среде разработки и даже в постановке, Paperclip использует мой производственный ковш вместо ведра разработки.

Вот часть пользовательской модели, которая относится к нему

has_attached_file :avatar, 
        storage: :s3, 
        s3_credentials: "#{Rails.root}/config/s3.yml", 
        s3_permissions: :private, 
        path: "/:style/:id/:filename", 
        s3_protocol: "https", 
        styles: { medium: "300x300#", thumb: "100x100#", icon: "26x26#" }, 
        default_url: ":style/ico_missing_user.png" 

И вот, мой YML файл:

common: &common 
    access_key_id: <%= ENV['S3_KEY'] %> 
    secret_access_key: <%= ENV['S3_SECRET'] %> 

development: 
    <<: *common 
    bucket: mydevbucket 

staging: 
    <<: *common 
    bucket: mystagingbucket 

production: 
    <<: *common 
    bucket: myprodbucket 

Что я делаю неправильно?

ответ

0

Я добавил файл "load_config.rb" в мой каталог инициализаторов:

load_config.rb

S3_CONFIG = YAML.load_file("#{::Rails.root}/config/s3.yml")[Rails.env] 

и начал использовать S3_CONFIG вместо "#{Rails.root}/config/s3.yml"

has_attached_file :avatar, 
        storage: :s3, 
        s3_credentials: S3_CONFIG, 
        s3_permissions: :private, 
        path: "/:style/:id/:filename", 
        s3_protocol: "https", 
        styles: { medium: "300x300#", thumb: "100x100#", icon: "26x26#" }, 
        default_url: ":style/ico_missing_user.png" 

Решение выше работало нормально для установки ведра, но после загрузки файлов я начал с проблемой скрепки, говоря, что ECONN: Aborted.

Ниже то, что я понял для работы:

has_attached_file :avatar, 
        storage: :s3, 
        :s3_credentials => "#{Rails.root}/config/s3.yml", 
        :bucket => ENV['S3_BUCKET'], 
        s3_permissions: :private, 
        path: "/:style/:id/:filename", 
        s3_protocol: "https", 
        styles: { medium: "300x300#", thumb: "100x100#", icon: "26x26#" }, 
        default_url: ":style/ico_missing_user.png" 

Примечание Я отделил ведро с учетными данными. Я сделал это, опираясь на на скрепку, а также на следующие sample

Смежные вопросы