CSS исчезает, когда Django 'DEBUG' становится False
Я работаю с Django и использую инфраструктуру AdminLTE для estilização, но когда я переключаю DEBUG на False, страница отображается с чистым html.
settings.py
:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'saga.core',
'saga.subjects',
'saga.accounts',
'saga.tasks',
'saga.study_time',
'django_adminlte',
'django_adminlte_theme',
]
django_adminlte и django_adminlte_theme - приложения для платформы стилей.
1 ответ
Когда DEBUG = True
Django будет обслуживать статические и мультимедийные файлы. когда DEBUG = False
Я не буду. Поэтому все файлы js и css вернут ошибку 404, если не будут обслужены. Для лучшего понимания того, что происходит, я рекомендую прочитать https://docs.djangoproject.com/en/1.11/howto/static-files/ Эти статические файлы могут также присутствовать в установленных приложениях, а не только внутри проекта. сам.
Для локального тестирования вы можете добавить следующее к вашему urls.py
urlpatterns
:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
static
можно импортировать из from django.conf.urls.static import static
Дополнительную информацию можно найти по адресу https://docs.djangoproject.com/en/1.11/howto/static-files/
Дополнительную информацию о том, как развернуть статические файлы в рабочей среде, можно найти по адресу https://docs.djangoproject.com/en/1.11/howto/static-files/deployment/