Ich lese, dass die meisten Leute es tun, from django.conf import settingsaber ich verstehe den Unterschied nicht einfach import settingsin einer Django-Projektdatei. Kann jemand den Unterschied erklären?
Ich lese, dass die meisten Leute es tun, from django.conf import settingsaber ich verstehe den Unterschied nicht einfach import settingsin einer Django-Projektdatei. Kann jemand den Unterschied erklären?
Antworten:
import settingsimportiert normalerweise das erste Python-Modul mit dem Namen, settings.pydas in gefunden sys.pathwurde (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.settingsist 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 settingsimportiert den ersten Python - Modul mit dem Namen settings.pygefunden 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.