首先,我已经尝试解决这个问题已经好几天了,并且在堆栈上看到并试过了很多帖子。我的问题仍然存在。很明显,我的应用程序在本地工作正常,但是当我成功部署到Heroku后访问该网站时,我在页面的左上角收到此消息,而没有其他任何内容,使其更难以排除故障。在关于Digital Ocean的deploy to Ubuntu之后,这个教程似乎是关于什么时候开始变坏。我已尝试过here和here的答案,以及其他一些类似的帖子,但NOTHING已经奏效。最初我从Heroku那里收到了一条遗漏的参数消息,但是其他建议似乎解决了这个问题但引导我解决了当前的问题。不知道我能躲在"我是一个Ruby Noob"借口,但经过一年的部署似乎是我存在的祸根。我怀疑它与ENV变量的设置有关,但是对我来说还没有修复工作。在Heroku上手动设置了Reveal Variables。 secrets.yml,application.yml和database.yml文件在我的.gitignore中。
其他一些值得注意的事项 - 我使用figaro来管理环境变量。我有一个S3存储桶来存储使用Railscast Pro#383,Carrierwave和Fog处理上传设置的图像。同样,这在早些时候正在起作用。
有没有人收到此错误或知道我如何能够迅速解决它?
配置/初始化/ carrierwave.rb
CarrierWave.configure do |config|
config.root = Rails.root.join('tmp')
config.cache_dir = 'carrierwave'
config.fog_credentials = {
provider: 'AWS', # required
aws_access_key_id: ENV["AWS_ACCESS_KEY_ID"], # required
aws_secret_access_key: ENV["AWS_SECRET_ACCESS_KEY"] # required
}
config.fog_directory = ENV["AWS_S3_BUCKET_NAME"] # required
end
配置/ application.yml
production:
AWS_S3_BUCKET_NAME: 'my_aws_secret_bucket_name_from_s3_manually_installed_on_heroku'
AWS_ACCESS_KEY_ID: 'my_aws_secret_access_key_id_from_s3_manually_installed_on_heroku'
AWS_SECRET_ACCESS_KEY: 'my_aws_secret_access_key_from_s3_manually_installed_on_heroku'
SECRET_KEY_BASE: 'my_secret_key_base_generated_from_doing_rake_secrets'
配置/ secrets.yml
development:
secret_key_base: some_random_#_for_dev
test:
secret_key_base: some_random_#_for_test
# Do not keep production secrets in the repository,
# instead read values from the environment.
production:
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
的.gitignore
# Ignore application configuration
config/application.yml
# Ignore secrets configuration
config/secrets.yml
# Ignore database configuration
config/database.yml