![](/img/trans.png)
[英]ActionView::Template::Error (No route matches {} missing required keys: [:id])
[英]ActionView::Template::Error (missing required :bucket option)
我在heroku日志中收到此錯誤。 在Amazon s3上創建新存儲桶並添加我的密鑰后,我現在收到此錯誤。 我還將我的密鑰/存儲桶名稱添加到了heroku,如下所示:
=== benjaminsunderland Config Vars
AWS_ACCESS_KEY_ID: my_access_key
AWS_BUCKET: mypinterestingapp
AWS_SECRET_ACCESS_KEY: my_secret_key
DATABASE_URL: my_database_url
LANG: en_US.UTF-8
RACK_ENV: production
RAILS_ENV: production
RAILS_LOG_TO_STDOUT: enabled
RAILS_SERVE_STATIC_FILES: enabled
SECRET_KEY_BASE: my_secret_key_base
而且在我的rails應用程序的enviroments / production.rb中
config.paperclip_defaults = {
:storage => :s3,
:s3_credentials => {
:bucket => ENV['mypinterestingapp'],
:access_key_id => ENV['AWS_ACCESS_KEY_ID'],
:secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
}
}
我在heroku日志中的錯誤:
2016-11-09T19:10:32.544099+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] ActionView::Template::Error (missing required :bucket option):
2016-11-09T19:10:32.544249+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] 15: <tbody>
2016-11-09T19:10:32.544275+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] 16: <% @pins.each do |pin| %>
2016-11-09T19:10:32.544676+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] 17: <tr>
2016-11-09T19:10:32.544707+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] 18: <td><%= image_tag pin.image.url %></td>
2016-11-09T19:10:32.544734+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] 19: <td><%= pin.description %></td>
2016-11-09T19:10:32.544764+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] 20: <td><%= pin.user.email if pin.user %></td>
2016-11-09T19:10:32.544790+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] 21: <td><%= link_to 'Show', pin %></td>
2016-11-09T19:10:32.544818+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537]
2016-11-09T19:10:32.544854+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] app/views/pins/index.html.erb:18:in `block in _app_views_pins_index_html_erb___1097567776692289569_70248207788000'
2016-11-09T19:10:32.544884+00:00 app[web.1]: [6df3c971-b288-4b7e-893e-dcea2f2ef537] app/views/pins/index.html.erb:16:in `_app_views_pins_index_html_erb___1097567776692289569_70248207788000'
我做錯了什么,因為heroku會出現此錯誤,而不是Rails應用程序。 我有錯字嗎? 您可以看到我在我的production.rb中將AWS_BUCKET命名為完全相同。
你需要:
config.paperclip_defaults = {
:storage => :s3,
:s3_credentials => {
:bucket => ENV['AWS_BUCKET'],
:access_key_id => ENV['AWS_ACCESS_KEY_ID'],
:secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
}
}
現在,當您應該尋找一個不存在的ENV['AWS_BUCKET']
,您正在尋找一個名為'mypinterestingapp'
的ENV
變量。
另外,我用一些通用占位符替換了上面代碼示例中的實際憑據。 在SO問題中發布實際憑證絕不是一個好主意;)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.