質問: { 'default': dj_database_url.config() } ```
回答: > > できればちゃんと解消をしたいのですが、DBのエラーが出た時どんな手順を踏んでエラーを解消するのでしょうか?? また、そのためにはどんな知識が必要なのでしょうか? > > > 手順は「コードのエラー」と同じで、まずエラーメッセージを確認し、続いて発生場所を特定し、問題の原因を特定し、問題を解決するための修正・調整を行う、という流れになるかと思います。 必要な知識としては、ベースの知識として、「 DB というものがどういうもので、どういう機能を持っているのか」はある程度知っておくのがよいものと思います。 エラーメッセージについては「発生しうるエラーの種類と意味をあらかじめ網羅しておく」というのは非効率なので、多くの方は実際にエラーが出たときに都度調べて知識を蓄積しているのではないでしょうか。 > > ローカル環境で動いていたものがテスト(heroku)で動かなくなるというのは一般にどんな原因があるのか? > > > teratail でよく質問にあがっている原因のパターンとしては * A) ローカルの変更をコミット・プッシュしたつもりだったがしていなかった * B) 利用 app や model の変更があったが、 Heroku 上で migrate 処理を行っていなかった( Django の場合) * C) 必要な環境変数をセットしていなかった 等が多いように思います。 > > permission denied for relation django_session > > > 今回のエラーについては、あくまでも想像ですが、途中まで Heroku 上で問題なく DB が使えていたのであれば、対象テーブル( `django_session` )が作れていないか、 DB のユーザまたはパーミッション( privilege )の設定が間違っているか、が原因ではないでしょうか。