Почему на хостинге не подгружаются css/js файлы и не видит админку grapelli?

Дело в том что почему-то на хостинге не подгружаются css/js файлы хоть и на локалке всё работало как следует. Плюс не подгружается админка grappelli.

Вот как я подгружаю css и js в хтмл файлике

{% load static %}
<link rel="shortcut icon" type="image/png" href="media/images/logominiature.png">
<link rel="stylesheet" type="text/css" href="{% static 'Homepage/style.css' %}">
<script src="{% static 'Homepage/js/stylejs.js' %}"></script>

вот что прописанно в файле settings.py

STATIC_URL = '/static/'
STATIC_DIRS = os.path.join(BASE_DIR, 'static')

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

STATICFILES_DIRS = [(os.path.join(BASE_DIR, 'static'))]

а это от грапелли

INSTALLED_APPS = [
'Homepage.apps.HomepageConfig',
'grappelli',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]

Ну и пожалуй всё


Ответы (2 шт):

Автор решения: bolt_py

Попробуйте добавить это в ваш корневой urls.py файл проекта:

if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
→ Ссылка
Автор решения: em0ji

Отредактируй setting.py:

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

STATICFILES_DIRS = [(os.path.join(BASE_DIR, 'static'))] либо закомментируй, либо вообще удали, также важно понимать путь к /static/ который использует web-сервер nginx. Если пути отличаются, то надо либо переписать путь в nginx, либо вынести /static/ в необходимую директорию. И только потом пересобрать статику командой python manage.py collectstatic.

→ Ссылка