覆盖后Django全局设置参数是否受影响?
在django/conf/global_settings.py中覆盖后Django全局设置参数是否受影响?,django,Django,在django/conf/global_settings.py中 DEBUG=False DEBUG=True 在my project settings.py中 DEBUG=False DEBUG=True 但是当我从global_settings.py访问调试时 from django.conf import settings print settings.DEBUG //True 这是真的不是假,为什么 我的第二个问题是 如果Django必须为每个项目设置文件(myproj/s
DEBUG=False
DEBUG=True
在my project settings.py中
DEBUG=False
DEBUG=True
但是当我从global_settings.py访问调试时
from django.conf import settings
print settings.DEBUG //True
这是真的不是假,为什么
我的第二个问题是
如果Django必须为每个项目设置文件(myproj/setting.py)提供DEBUG=True,那么为什么它不能在global_settings.py中使DEBUG=True而不是DEBUG=False呢?[1]您的全局设置会被
settings.py
文件覆盖,如中所述
从文档中:
以下是Django在编译设置时使用的算法:
- 从全局_settings.py加载设置李>
- 从指定的设置文件加载设置,必要时覆盖全局设置
django.conf.settings导入调试
),该对象是上述算法的输出
[2] 您必须为每个项目指定DEBUG=True
(而不是在global_settings.py
文件中)的原因是出于安全原因
debug参数向项目显示了许多个人信息,这些信息对于开发中的调试非常有用,但在生产中永远不应该被访问。因此Django要求用户明确指定启用DEBUG