S3를 설치했으며 영웅에서 잘 작동합니다. 자산을 heroku로 푸시려고 RAILS_ENV=production bundle exec rake assets:precompile
을 실행하면 위의 오류가 반환됩니다. heroku config를 실행하면 이미 S3 버킷이 있고 다른 모든 것은 설정됩니다.KeyError : 키를 찾을 수 없음 : "S3_BUCKET_NAME"
무엇을 찾고 있으며 왜 자산을 컴파일하기 위해 S3 이름을 찾을 수 없는가? production.rb
config.paperclip_defaults = {
storage: :s3,
s3_credentials: {
bucket: ENV.fetch('S3_BUCKET_NAME'),
access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'),
s3_region: 'us-west-2',
}
}
에서
가 나는 이것에 몇 SO 발견했지만, 아무도 해결책으로 나를 가리키는되지 않습니다. 어떤 도움을 주셔서 감사합니다!
업데이트 : 왜냐하면 내가 로컬로 컴파일해야하는 이유는 heroku가 application.js 파일을 꺼내기 때문입니다.
remote: Running: rake assets:precompile
remote: I, [2016-09-23T15:12:53.753671 #267] INFO -- : Writing /tmp/build_97a8fe2ca07bc4bf090be26f2be2872b/public/assets/application-9c608f99ae2b1980d74ba674b9f9ff7f0ae113d532e2c2ea580960a6a53346bb.js
remote: Asset precompilation completed (6.54s)
remote: Cleaning assets
remote: Running: rake assets:clean
remote: I, [2016-09-23T15:12:55.908630 #273] INFO -- : Removed application-489c5647af1ca8b6a56e560e8a83d77a1a070778dabb4f0b40f55c4a4e5b8feb.js
이것은 실제로 문제입니다. 내가 영웅에게 가면 application.js가 나옵니다. 그래서 저는 그것을 지역적으로 컴파일하려고 노력 중이므로 heroku로 푸시됩니다. 로그 오류로 오류를 업데이트합니다. 그냥 지식을 위해서, 나는 S3를 설치하기 전에 로컬에서 잘 컴파일하고 있었다. – gwalshington
@ gwalshington 문제를 오진했다. 자산을 로컬에서 컴파일하고 Heroku로 푸시하는 것은 잘못된 대답입니다. Heroku가 application.js 파일을 제거하지 않고 있습니다. 이전 버전 *을 제거하고 있습니다 .js – meagar
사실, application.js는 프로젝트에 전혀 없습니다. 왜 거기에 있지 않을까에 대한 생각? 그리고 거기에 있지 않다는 것을 확인하기 위해, 나는 콘솔에 그냥 묻습니다. 페이지가로드 될 때 뭔가를 로깅하십시오. 그리고 그렇게하지 않습니다. – gwalshington