【Django】herokuに関するエラーとsetting.pyのコード

実現したいこと

作成したDjangoをherokuにデプロイさせて頂いたのですが、アプリケーションエラーが発生してしまいましたので、デプロイを成功させたいです。

前提

デプロイに当たり、setting.py等のデプロイに関する記述を書いてあります。

試したこと

エラー表示に書かれていたログを確認するコマンドを打ち込み、確認しました。
マイグレーションが失敗し続けていたので、import django_herokuをコメントアウトしてデプロイをしたところ、マイグレーションは成功したのですが、bad request 400と表示されたので、元に戻しました。

発生している問題・エラーメッセージ

herokuのログ

2023-08-16T07:58:42.884483+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=message-board-portfolio-6c061f2f5c3b.herokuapp.com request_id=d439839b-8ab4-4a28-bf17-d156e7881249 fwd="113.149.158.1" dyno= connect= service= status=503 bytes= protocol=https 2023-08-16T07:58:43.166032+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=message-board-portfolio-6c061f2f5c3b.herokuapp.com request_id=570bee90-3f19-448a-bedc-85844bedda57 fwd="113.149.158.1" dyno= connect= service= status=503 bytes= protocol=https

マイグレーションのエラー

import django_heroku ModuleNotFoundError: No module named 'django_heroku'

該当のソースコード

setting.py

1STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') # heroku追記 2STATIC_URL = '/static/' 3 4# heroku追記 5STATICFILES_DIRS = ( 6 os.path.join(BASE_DIR, 'static'), 7) 8 9#heroku用設定 10DATABASES = { 11 'default': { 12 'ENGINE': 'django.db.backends.mysql', #mysqlをデータベースとして使用することを指定 13 'NAME': 'mysite', #データベース名 14 'USER': 'DBuser', #データベースを作成したユーザー名 15 'PASSWORD': 'DBuser-24', #ログインするためのパスワード 16 'HOST': 'localhost', 17 'PORT': '3306', 18 } 19} 20 21# heroku追記 22import dj_database_url 23db_from_env = dj_database_url.config() 24DATABASES['default'].update(db_from_env) 25 26ALLOWED_HOSTS = ["https://***************6c061f2f5c3b.herokuapp.com/"] 27 28DEBUG = False 29 30try: 31 from config.local_settings import * 32except ImportError: 33 pass 34 35if not DEBUG: 36 import django_heroku 37 django_heroku.settings(locals())

locall_setting.py

1from pathlib import Path 2 3#settings.pyからそのままコピー 4SECRET_KEY = '*****************************************' 5 6BASE_DIR = Path(__file__).resolve().parent.parent 7 8#settings.pyからそのままコピー 9DATABASES = { 10 'default': { 11 'ENGINE': 'django.db.backends.mysql', #Herokuのデータベースに関する設定 12 13 #'ENGINE': 'django.db.backends.mysql', #mysqlをデータベースとして使用することを指定 14 'NAME': '*****', #データベース名 15 'USER': '*****, #データベースを作成したユーザー名 16 'PASSWORD': '*******4', #ログインするためのパスワード 17 'HOST': 'localhost', 18 'PORT': '3306', 19 } 20} 21 22ALLOWED_HOSTS = ['*************************.vfs.cloud9.ap-northeast-1.amazonaws.com'] 23 24DEBUG = True #ローカルでDebugできるようにする。

補足情報(FW/ツールのバージョンなど)

python: 3.11.0
django: 4.2.4
heroku: heroku/7.69.1 linux-x64 node-v14.19.0

コメントを投稿

0 コメント