2016-10-10 1 views
0

Мой сайт размещен на Heroku. Все идет хорошо, кроме статических файлов. Статические файлы есть на этом пути doctor_app/doctor_app/static/.Heroku Статические файлы, не работающие для django admin + Файл Не найдено + 404

Локально панель администратора для django работает отлично. Но на heroku, он не находит никаких статических файлов.

Удивительно, когда я запускаю эту команду с терминалом.

heroku run cat doctor_app/static/admin/css/base.css 

Он выводит содержимое base.css. что означает статические файлы

Интересно, почему django не находит файлы?

Для получения дополнительной информации, Вот мой settings.py

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 
PROJECT_ROOT = os.path.dirname(os.path.abspath(__file__)) 

STATIC_ROOT = os.path.join(PROJECT_ROOT, 'static') 
#STATIC_URL = '/static/' 

STATICFILES_DIRS = (
    os.path.join(PROJECT_ROOT, 'staticfiles'), 
) 

STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage' 

STATIC_URL = '/static/' 
+0

Вы выполнили «python manage.py collectstatic»? –

+0

Да, я это сделал. @VijeshVenugopal –

+0

@AdilMalik от «он не находит никаких статических файлов», вы имеете в виду, что они возвращают ошибку 404? Если да, как вы связываетесь с этими статическими файлами в своем шаблоне? Кроме того, разместите переменные 'settings.py' для статических файлов, например,' STATICFILES_DIRS' и т. Д. – YPCrumble

ответ

3

Это не ошибка Джанго. То, что django делает, готовит статические файлы и собирает их в STATIC_ROOT, что и все в вашем случае.

Помните, что обслуживание статических файлов для проекта django обычно не входит в ответственность django. Вы можете обратиться к django's doc on deploying static files и попытаться развернуть их с помощью таких приложений, как uwsgi или nginx.

Для быстрой попытки, вы можете добавить статические файлы в маршрутизации djanog, изложенная here:

из django.conf параметров импорта из django.conf.urls.static импорта статических

urlpatterns = [ 
    # ... the rest of your URLconf goes here ... 
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) 

Что касается вашего вопроса, это может сработать для вас.

+0

Это очень помогло мне! спасибо –

Смежные вопросы