LoginSignup
0
0

More than 3 years have passed since last update.

【Heroku】デプロイ時 We're sorry, but something went wrong.解決方法

Posted at

ローカル環境で構築して、Herokuにデプロイしたが、こんな画面がでてしまいました。
スクリーンショット 2020-12-19 18.43.35.png
We're sorry, but something went wrong.

原因

開発環境(deveropment)はMySQLとしていたが、Herokuの標準データベースはPostgreSQLだが、MySQLのままだった。

対処方法

gemに下記を追記して、本番環境ではpostgreSQLを適用する。

group :production do
  gem 'pg', '>= 0.18', '< 2.0'
end

group :production doで本番環境のみの適用となります。

bundle installしますが、開発環境のみで本番環境では不要なので、--without productionをつけます。

$ bundle install --without production

次にdatabase.ymlを編集します。
デフォルトではこのようになっていると思います。

database.yml
production:
  <<: *default
  database: <app_name>_production
  username: <app_name>
  password: <%= ENV['<app_name>_DATABASE_PASSWORD'] %>

これをこのように書き換えます。

database.yml
production:
  adapter: postgresql
  encoding: unicode
  pool: 5
  database: <app_name>_production
  username: <app_name>
  password: <%= ENV['<app_name>_DATABASE_PASSWORD'] %>

あとは、heroku pushして、忘れずにheroku run rails db:migrateすればOKです!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0