Django Admin поднимает 500 ошибку в продакшене Heroku

Я знаю, что этот вопрос поднимался много раз, но так и не смог решить проблему. Вот моя проблема: мое приложение Django-React развернуто на Heroku и отлично работает (очень простое приложение). Я хотел бы получить доступ к /admin части моего приложения, но я получаю 500 Internal Server Error. Ошибка появляется локально и в Heroku. DEBUG - False, и, к сожалению, я не могу заставить журналы работать ни в Heroku, ни локально :(

).

Вот мой settings.py:

Вот как выглядит моя папка:

Структура папки

Не стесняйтесь спрашивать у меня больше кода, я новичок в Django / React, поэтому я не уверен, что мне стоит делиться здесь или нет.

Так я выяснил свою проблему.

Это не связано с PostgreSQL, но спасибо @Chris, что указал на это, это лучшая методология разработки для меня.

Проблема была связана с тем, как я управлял статическими файлами в моем settings.py

Я не понял, как работает STATIC_ROOT, я понял наоборот. Поразмыслив, вот что я сделал:

STATIC_ROOT = os.path.join(BASE_DIR,'staticfiles')

Мои файлы будут обслуживаться из этой staticfiles директории.

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'students-fe','build','static'),
]

Но он должен включать мое приложение react, которое находится в папке students-fe/build/static.

Плюс ко всему, при развертывании на Heroku необходимо добавить билдпаки, что я и сделал, но не в правильном порядке.

Сначала мне нужно было добавить python (для Django):

heroku buildpacks:set heroku/python

и затем говорит, что перед этим нужно установить nodejs (для React):

heroku buildpacks:add --index 1 heroku/nodejs

Поэтому Heroku сначала выполнит npm run build перед python manage.py collecstatic, который необходим для перемещения статических файлов в папку staticfiles.

Надеюсь, это может помочь другим. Спасибо всем за ваши ответы.

Вернуться на верх