Мой сайт показывал 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 и тогда все должно работать.