Estou lendo que a maioria das pessoas faz, from django.conf import settings
mas não entendo a diferença de simplesmente fazer import settings
em um arquivo de projeto django. Alguém pode explicar a diferença?
python
django
django-settings
Tzenderman
fonte
fonte
Respostas:
import settings
irá importar o primeiro módulo python chamadosettings.py
encontradosys.path
, geralmente (nas configurações padrão do django). Ele permite acesso apenas ao arquivo de configurações definidas pelo site, que sobrescreve as configurações padrão do django (django.conf.global_settings
).Então, se você tentar acessar uma configuração válida do django não especificada no seu arquivo de configurações, você obterá um erro.
django.conf.settings
não é um arquivo, mas uma classe que faz uma abstração dos conceitos, configurações padrão e configurações específicas do seu site. Django também faz outras verificações quando você usafrom django.conf import settings
.Você também pode encontrá-lo nos documentos do django .
Espero que isto ajude.
fonte
import settings
importará o primeiro módulo python chamadosettings.py
encontrado emsys.path
. Este pode não ser o "arquivo de configurações definidas pelo site", que é pesquisado na variável de ambiente "DJANGO_SETTINGS_MODULE" e pode ser apenas qualquer pacote ou módulo Python.from django.conf import settings
é a melhor opção.Eu uso arquivos de configurações diferentes para o mesmo projeto django (um para "live", um para "dev"), o primeiro selecionará o que está sendo executado.
fonte