0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

RailsチュートリアルのアプリをHerokuにデプロイしたけどDBの設定ができてなかったので見直しした話

Posted at

開発環境

  • CentOS 7
  • RubyOnRails 5.1
  • PostgreSQL(production環境用)

問題

Railsチュートリアル(rails5.1版)をHerokuにデプロイしたが、Signupでエラーページが表示された。
見直してみると結構しょぼいが、メモや今後のために記録しておく。

原因その1

よくよく考えたら、production用DBの設定をdatabase.ymlにしていなかったので設定。

production:
  adapter: postgres
  url: <%= ENV['DATABASE_URL'] %>

原因その2

これでデプロイしたが、まだエラーページに行くので

$ heroku logs

で確認してみた。

ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR:  relation "users" does not exist

と出力されていたので、DBにテーブルを作ってやる必要がある。
てことで

$ heroku run rails db:migrate

これでめでたくテーブルが出来て、Signupページも表示できた。

ついでに、作成したDBに接続してみる

$ heroku pg:psql *********** --app $$$$$$$$$$$$

を実行。
このコマンドは、Herokuの管理画面のHeroku Postgresアドオンから確認できる)
*や$は、マスクしてある部分なので、アプリによって読み替える。

(Postgresがローカルに入ってない場合は sudo yum install postgresql を実行)

0
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?