かなり詰まった上に簡単に解消できた問題だった...
トラブル内容
settings.pyを開発用、本番用に分けるため
アプリディレクトリ
┗settings.py
から
アプリディレクトリ
┗settings.py(本番用設定ファイル)
┗settings_common.py(本番/開発共通設定ファイル)
┗settings_dev.py(開発用設定ファイル)
これで起動すると以下エラーが発生
Performing system checks...
System check identified no issues (0 silenced).
Exception in thread django-main-thread:
Traceback (most recent call last):
# 省略
django.db.utils.OperationalError
django.db.utils.OperationalErrorはDBサーバーとの接続時に発生するエラーであることは確認済み
解決方法
本アプリはPostgreSQLを利用しているので、まずはログの確認
2024-02-10 00:33:42.274 JST [33984] FATAL: ユーザー"postgres "のパスワード認証に失敗しました
2024-02-10 00:33:42.274 JST [33984] 詳細: ロール"postgres "は存在しません。
接続はファイルC:/Program Files/PostgreSQL/16/data/pg_hba.confの行117に一致しました: "host all all ::1/128 scram-sha-256"
認証に失敗しているというログが出ていた。
利用しているのがPyCharmであり、runserverコマンドを実行構成に登録していた。
上記settingsファイルを編集した際に環境変数も変更していた。
結果的に
DB_USERの値postgresの後ろに不要な空白があったことが原因
無事起動が出来た
学んだこと
エラーの内容から早々にDB周りのエラーであることは確認できていたが、変更したsettingsファイルをひたすら確認していたのが問題だった。
DB周りのエラーであればまずはDBのログを確認するべきだった