↓↓クリックして頂けると励みになります。
【47 | Herokuの接続とPush】 << 【ホーム】 >> 【49 | 本番環境のコールバック】
Herokuでデータベースを利用する際は、料金がかかります。
動作のみを試す場合は一番安いプランのMINIプラン(月上限$5)でいいと思いますが、レコード数が1万行までに制限されるため注意が必要です。
次に安いBASICプラン(月上限$9)はレコード数が1千万行に増えますが、同時接続数が20ユーザーに制限されるため、こちらも注意が必要です。
まずHerokuダッシュボードでDataをクリックします。
postgresを選択します。
postgresをインストールします。
プランを選択してオーダーします。
選択したプランを確認してください。
「Data」→「Settings」からデータベースを選択してください。
「Database Credentials」をクリックします。
データベースの情報がでますので、この情報をコピーします。
このデータベース情報を「config/database.yml」ファイルの「production」の項目に入力します。
production: <<: *default database: dgp6*** username: tbhsje*** password: f72618c0a2539d014*** host: ec2-34-236-199-229.compute-1.amazonaws.com
保存してGithubにコミットします。
コミット後、Herokuにpushしてください。
マイグレーションファイルをHerokuデータベースに適用します。
コマンド
heroku run rails db:migrate
Herokuのコンソールページでマイグレーションコマンドを走らせることもできます。
この時、Macで開発を進めていると以下のエラーに遭遇することがあります。
[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called
これはpostgresとmacOSとの互換の関係で起きるエラーで、「.bash_profile」ファイル及び「.zshrc」ファイルに以下の記述を追加することで解決されます。
export DISABLE_SPRING=true export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
open .bash_profile
open .zshrc
などとしてファイルを開けば編集できます。
再びrails db:migrate
を行えばエラーが出なくなります。
マイグレーションが成功したら、herokuのダッシュボードで右上の「Open App」をクリックするとデプロイしたアプリケーションが開きますので、動作を確認してください。
【47 | Herokuの接続とPush】 << 【ホーム】 >> 【49 | 本番環境のコールバック】
↓↓クリックして頂けると励みになります。