Abhängig vom verwendeten Unterrichtsmaterial ist es geschrieben, um whitenoise als Paket zu installieren und zu verwenden, das zum Ausführen der Django-App erforderlich ist.
Ich möchte über den Fehler schreiben, der zu diesem Zeitpunkt aufgetreten ist.
Ältere Materialien haben an wsgi.py geschrieben, um Folgendes hinzuzufügen:
wsgi.py
from whitenoise.django import DjangoWhiteNoise
application = DjangoWhiteNoise(application)
Und wenn ich versuche, die App zu starten, wird eine solche Fehlermeldung angezeigt
ImportError:
Your WhiteNoise configuration is incompatible with WhiteNoise v4.0
This can be fixed by following the upgrade instructions at:
http://whitenoise.evans.io/en/stable/changelog.html#v4-0
http://whitenoise.evans.io/en/stable/changelog.html#v4-0
Die neueste Version im Januar 2020 ist Whitenoise 5.0, und es scheint, dass sich die Notation zum Aktivieren von White Noise in Django von Version Whitenoise 4.0 geändert hat.
Fügen Sie die folgende Anweisung genau so hinzu, wie sie geschrieben wurde.
settings.py
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware',
# ...
]
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
Die Einschränkung besteht darin, es oben in die Middleware-Liste aufzunehmen.
Und löschen wir den Teil, der zu wsgi.py hinzugefügt wurde.
wsgi.py
from whitenoise.django import DjangoWhiteNoise #Löschen Sie diese Zeile
application = DjangoWhiteNoise(application) #Löschen Sie diese Zeile
Jetzt funktioniert es gut.
Recommended Posts