Ich lese, dass die meisten Leute es tun, from django.conf import settings
aber ich verstehe den Unterschied nicht einfach import settings
in einer Django-Projektdatei. Kann jemand den Unterschied erklären?
Ich lese, dass die meisten Leute es tun, from django.conf import settings
aber ich verstehe den Unterschied nicht einfach import settings
in einer Django-Projektdatei. Kann jemand den Unterschied erklären?
Antworten:
import settings
importiert normalerweise das erste Python-Modul mit dem Namen, settings.py
das in gefunden sys.path
wurde (in Standard-Django-Setups). Es erlaubt nur den Zugriff auf Ihre Site-definierte Einstellungsdatei, die die Django-Standardeinstellungen ( django.conf.global_settings
) überschreibt .
Wenn Sie also versuchen, auf eine gültige Django-Einstellung zuzugreifen, die nicht in Ihrer Einstellungsdatei angegeben ist, wird eine Fehlermeldung angezeigt.
django.conf.settings
ist keine Datei, sondern eine Klasse, die eine Abstraktion der Konzepte, Standardeinstellungen und Ihrer standortspezifischen Einstellungen vornimmt. Django führt auch andere Überprüfungen durch, wenn Sie verwenden from django.conf import settings
.
Sie finden es auch in den Django-Dokumenten .
Hoffe das hilft.
import settings
importiert den ersten Python - Modul mit dem Namen settings.py
gefunden sys.path
. Dies ist möglicherweise nicht die "Site Defined Settings File", die in der Umgebungsvariablen "DJANGO_SETTINGS_MODULE" nachgeschlagen wird und nur ein beliebiges Python-Paket oder -Modul sein kann.