Мой сайт показывал CSS нормально, пока я не сделал collectstatic - Django

Мой сайт все делал хорошо и показывал все CSS, пока я не запустил на нем collectstatic. Теперь все выглядит так, как выглядело бы, если бы CSS не существовало. Есть ли какое-нибудь решение для этого? Или есть какой-то способ удалить collectstatic, чтобы вернуть прежний вид?

Я следовал этому руководству для размещения этого сайта: https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-ubuntu-16-04

Вот мой settings.py (только последняя часть, где я устанавливаю статические и медиа вещи):

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static/')
STATICFILES_DIRS = []
MEDIA_ROOT  = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
LOGIN_URL = '/main/user_login/'

Итак, как вы упомянули, он перестал работать после того, как вы выполнили команду collectstatic. Команда collectstatic заставляет Django искать все статические файлы в ваших приложениях и собирать их в один каталог, который является STATIC_ROOT. (В продакшене нужен один каталог для всех статических файлов)

Поместите каталоги, содержащие ваши статические файлы, в STATICFILES_DIRS.

Вы также должны включить свои статические урлы в urls.py

from django.contrib.staticfiles.urls import staticfiles_urlpatterns

urlpatterns = [your paths go here]

urlpatterns += staticfiles_urlpatterns()

После включения ваших статических каталогов в массив STATICFILES_DIRS и включения статических урлов в ваш urls.py, используйте команду collectstatic и тогда все должно работать.

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