在Django中导入设置

时间:2015-12-17 23:26:00

标签: python django

我正在查看GitHub上的Django source code(特别是django.conf模块),我从this post了解到你永远不应该导入global_settings模块本身,而只是:

from django.conf import settings

所以我知道这是可行的,但是作为一个习惯于查看源代码的人来了解一些"引擎盖下的#34;这些东西适用于Django,我想更详细地了解如何导入"设置"当django / conf目录中没有settings.py时。

我假设这是一个内置的django,你可以从django.conf导入设置"并且它被django引擎拦截并且构建了正确的设置模块/等。然后过去了。是这种情况,还是我在这里发生了其他事情?

1 个答案:

答案 0 :(得分:4)

from django.conf import settings说“查找django.conf模块并从中导入名为settings的变量”。

django.conf是一个包,因此可以在文件django/conf/__init__.py中找到源代码django.conf 模块。看一下,最后有一个名为settings的变量,它是LazySettings的一个实例。 LazySettings的源代码可以在文件开头附近找到。