spark
@spark

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

HerokuにDjangoをDeployする際、Heroku posgreのconfig varのDATABASE_URLをDjangoで読み込見込んで、正常に動作させたい

解決したいこと

HerokuにDjangoをDeployする際、Heroku posgreのconfig varのDATABASE_URLをDjangoで読み込見込んで、正常に動作させたい

発生している問題・エラー

Heroku PosgreのDATABASE_URLをDjangoのsetting.pyで読み込めず、application errorが発生する

Application error

Django+REST frameworkを使ってAPIサーバーを構築し、Herokuにアップする際、setting.pyのDATABASESにHeroku PostgreのDATABASE_URLを下記のようにハードコードすると問題なくHeroku上で動作する。(xxxは、本来はDATABASE_URLの情報を入力しているが、今回はあえて隠している)

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'xxx',
        'HOST': 'xxx',
        'PORT': '5432',
        'USER': 'xxx',
        'PASSWORD': 'xxx,

    }
}

しかし、Djangoのプロジェクトに.envファイルを追加し、下記のように記載して、(xxxは、本来はDATABASE_URLの情報を入力しているが、今回はあえて隠している)

DATABASE_URL=postgres://xxxx

setting.py

import dj_database_url
from dotenv import (
find_dotenv,
load_dotenv,
)
load_dotenv(find_dotenv())
DATABASES = {
    'default': dj_database_url.config(conn_max_age=600),
}

のように記載すると、local環境では動作するが、herokuにアップするとapplication errorになる。

原因はわかりますか?

0

2Answer

ご回答ありがとうございます!
こちら無事解決いたしました。
原因は、evnファイルとは関係ないところでのエラーでした。。

0Like

Your answer might help someone💌