如何修复s3 / paperclip / rails模板错误:bucket选项?

时间:2013-12-12 14:52:58

标签: ruby-on-rails heroku amazon-s3 paperclip

当我尝试在生产中使用paperclip和s3作为我的rails应用程序时,我收到错误消息“ActionView :: Template :: Error(缺少必需:bucket选项)”。

我的produ.rb有:

config.paperclip_defaults = {
  :storage => :s3,
  :s3_credentials => {
    :bucket => ENV['rockywolf'],
    :access_key_id => ENV['dsfa'],
    :secret_access_key => ENV['fdsa']
  }
}

当我运行heroku配置时,我有:

AWS_ACCESS_KEY_ID:          dsfa
AWS_SECRET_ACCESS_KEY:      fdsa
S3_BUCKET_NAME:             rockywolf
bucket:                     rockywolf

有关如何解决这个问题的建议吗?

2013-12-12T14:44:59.342109+00:00 app[web.1]: ActionView::Template::Error (missing required :bucket option):
2013-12-12T14:44:59.342109+00:00 app[web.1]:     38:         <!-- End image -->
2013-12-12T14:44:59.342109+00:00 app[web.1]:     33:         <!-- Image -->
2013-12-12T14:44:59.342109+00:00 app[web.1]:     34:         <div class="col-md-3">
2013-12-12T14:44:59.342109+00:00 app[web.1]:     35:           <%= image_tag product.avatar.url(:medium), :class => "featurette-image img-responsive", :alt => "#{product.name}" %>
2013-12-12T14:44:59.342109+00:00 app[web.1]:     36: 
2013-12-12T14:44:59.342109+00:00 app[web.1]:     37:         </div>
2013-12-12T14:44:59.342296+00:00 app[web.1]:   app/views/products/latest.html.erb:6:in `_app_views_products_latest_html_erb___978491162299015895_69950414232980'
2013-12-12T14:44:59.342296+00:00 app[web.1]: 
2013-12-12T14:44:59.342109+00:00 app[web.1]: 
2013-12-12T14:44:59.342296+00:00 app[web.1]: 
2013-12-12T14:44:59.342109+00:00 app[web.1]:   app/views/products/latest.html.erb:35:in `block in _app_views_products_latest_html_erb___978491162299015895_69950414232980'
Sharats-MacBook-Pro:rockywolf sharatakasapu$ 

1 个答案:

答案 0 :(得分:4)

env键应该是配置的名称。

config.paperclip_defaults = {
  :storage => :s3,
  :s3_credentials => {
    :bucket => ENV['S3_BUCKET_NAME'],
    :access_key_id => ENV['AWS_ACCESS_KEY_ID'],
    :secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
  }
}