[PYTHON] [Django] CSS im Projekt kann nicht gelesen werden

Veranstaltung

Ich habe auf die Django-Verwaltungssite in der lokalen Entwicklungsumgebung zugegriffen. Die CSS (statische Datei) konnte auf der Verwaltungssite nicht wie unten gezeigt gelesen werden.

django_admin_no_css_login.png django_admin_no_css.png


Voraussetzungen

Python 3.7.4
Django 2.2.6
virtualenv 16.1.0

Analyse

HTTP-Protokoll

$ python manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).
November 02, 2019 - 16:45:33
Django version 2.2.6, using settings 'studysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[02/Nov/2019 16:24:55] "GET /admin/ HTTP/1.1" 200 3080
[02/Nov/2019 16:24:55] "GET /static/admin/css/responsive.css HTTP/1.1" 404 77
[02/Nov/2019 16:24:55] "GET /static/admin/css/dashboard.css HTTP/1.1" 404 77
[02/Nov/2019 16:24:55] "GET /static/admin/css/base.css HTTP/1.1" 404 77

Anscheinend kann CSS nicht gelesen werden. Ich habe settings.py überprüft, um die Ursache herauszufinden.

settings.py


# snip

DEBUG = False
ALLOWED_HOSTS = ['localhost','0.0.0.0']

# snip

Das obige DEBUG = False war verdächtig. Wenn Sie es also auf True setzen, kann CSS gelesen werden. DEBUG = False soll sich in einer Produktionsumgebung befinden, und es scheint, dass statische Dateien von einem Webserver wie nginx gelesen werden.

Gegenmaßnahme

Damit CSS geladen werden kann, muss ** eine der folgenden beiden ** unterstützt werden.

1. Setzen Sie DEBUG = True in settings.py

Wenn True festgelegt ist, wird auch CSS im Projekt geladen.

2. Verwenden Sie den Befehl python manage.py runserver --insecure

Mit der Option --insecure wird das CSS im Projekt geladen.

Bonus

settings.py


DEBUG = False
ALLOWED_HOSTS = ['*']

CSS wurde mit dieser Einstellung nicht angewendet. Es scheint, dass CSS nicht einfach durch willkürliches Setzen von ALLOWED_HOSTS gelesen werden kann.

Recommended Posts

[Django] CSS im Projekt kann nicht gelesen werden
django kann nicht in der Entwicklungsumgebung von pipenv + pyenv installiert werden
Ich kann mit Python3.5 (Windows) + django1.7.1 kein Projekt erstellen.
[Django] Benennen Sie das Projekt um
Registrieren Sie die Django-Anwendung im Projekt
Wie man CSS in Django reflektiert
Wechseln Sie die in Django 1.9 angezeigte Sprache
Holen Sie sich die Abfragezeichenfolge (Abfragezeichenfolge) mit Django
Jupyter Notebook 6.0.2 kann nicht in der in Anaconda erstellten Python 2.7-Umgebung installiert werden
Holen Sie sich die IP-Adresse des Kunden mit Django
Behebt ein Problem, bei dem statische Dateien (CSS, JS, img) nicht geladen werden, wenn DEBUG = False in Django ist.
Django ~ Lass es uns im Browser anzeigen ~
CSS-Umgebung in 10 Minuten mit Django erstellt
Lesen Sie alle CSV-Dateien im Ordner
Lesen Sie die Datei Zeile für Zeile mit Python
Die Geschichte der Verwendung von mysqlclient, da PyMySQL nicht mit Django 2.2 verwendet werden kann
Versuchen Sie, die Spotify-API in Django zu aktivieren.
[Python] Lesen Sie die angegebene Zeile in der Datei
Erstellen Sie ein Django-Projekt und eine Django-Anwendung in einer virtuellen Python-Umgebung und starten Sie den Server
Die Funktion _authenticate_with_backend wurde in django auth.autenticate nicht mehr unterstützt
Veröffentlichtes Django-Projekt, entwickelt in Cloud9 auf Heroku
Lesen Sie die Ausgabe von subprocess.Popen in Echtzeit
PyQtGraph ist möglicherweise nicht im Interpreter verfügbar.
Matplotlib usw. kann nicht in die VirtualEnv-Umgebung importiert werden
Das Problem, dass der Befehl ifconfig nicht verwendet werden kann
Django-Projektbasislinie
Form in Django
Die von OpenCV ausgegebene AVI-Datei kann nicht abgespielt werden
Die Hintergrundfarbe der QWidget-Unterklasse kann nicht festgelegt werden
Lesen Sie die CSV-Datei und zeigen Sie sie im Browser an
[Memorandum] Japanische Schlüssel können nicht in Pythons string.Template.substitute verwendet werden
[Django] Tabelle abschneiden (alle Tabellendaten löschen)
Setzen Sie DateField des Formulars in Django auf type = date
Lesen Sie die Linkliste im CSV-Format mit dem Graph-Tool
Lernnotizen für die Migrationsfunktion im Django-Framework (3)
Listenverständnis, da operator.methodcaller nicht mit Python 2.5 verwendet werden kann
Operatoren ++, - können nicht in Python verwendet werden (Unterschied zu PHP)
Lernnotizen für die Migrationsfunktion im Django-Framework (1)
So verweisen Sie auf statische Dateien in einem Django-Projekt
Kaggle Tutorial Titanic Know-how, um in den Top 2% zu sein
Lesen Sie "Quantencomputer hergestellt in 14 Tagen". der 2. Tag
[Redash] Die Standardbibliothek kann nicht in der Python-Funktion verwendet werden
Eine Excel-Tabelle kann nicht mit dem Blattnamen pd.read_excel angegeben werden
[Django] Feldnamen, die für das Benutzermodell, die Benutzerregistrierung und die Anmeldemethoden verwendet werden können
Behandlung des Fehlers, dass ein HTTP-Abruffehler in gpg auftritt und der Schlüssel nicht abgerufen werden kann