Как исправить ошибку FileNotFoundError: [Errno 2] Нет такого файла или каталога:? (HEROKU)
Я пытаюсь вывести мое приложение Django + React на heroku. Я настроил путь для моих статических файлов в settings.py
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'app/laundryman_frontend/build/static')
]
Сборка успешна, когда я нажимаю на heroku, но когда я запускаю heroku run python manage.py collectstatic
я получаю ошибку FileNotFoundError: [Errno 2] No such file or directory: '/app/laundryman_frontend/build/static'
это то, что установлено в BASE_DIR:
BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
Мое предположение заключается в том, что Heroku не ищет и не распознает путь, который я установил для статических файлов.
Помогите пожалуйста решить эту проблему
Логика фрагментов кода в вашем вопросе очень проста.
Установите
BASE_DIR
в каталог, содержащийmanage.py
файл.BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
Установите
STATICFILES_DIRS
относительноBASE_DIR
.STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'app/laundryman_frontend/build/static') ]
Если этот "алгоритм" не работает (т.е. каталог статических файлов вашего приложения Django установлен неправильно), то:
manage.py
находится в неправильном месте, или- указанный вами относительный путь неверен, или (возможно)
- некоторые материалы не были развернуты.
Возможно также, что collectstatic
не сработало; см. https://devcenter.heroku.com/articles/django-assets