Python 无法从django设置导入某些变量
我已将Python 无法从django设置导入某些变量,python,django,Python,Django,我已将DJANGO\u设置\u模块设置为我的设置文件。 此设置文件的一些示例行如下所示: TEST = { 'CLIENT': os.environ.get("CLIENT_NAME", "unknown"), 'ENVIRONMENT': os.environ.get("ENVIRONMENT", "unknown") } client = os.environ.get("CLIENT_NAME", "unknown") environment = os.environ.ge
DJANGO\u设置\u模块
设置为我的设置文件。
此设置文件的一些示例行如下所示:
TEST = {
'CLIENT': os.environ.get("CLIENT_NAME", "unknown"),
'ENVIRONMENT': os.environ.get("ENVIRONMENT", "unknown")
}
client = os.environ.get("CLIENT_NAME", "unknown")
environment = os.environ.get("ENVIRONMENT", "unknown")
然后,我尝试使用
from django.conf import settings as django_settings
然后我可以打印django\u设置的值。测试['CLIENT']
,但不能打印django\u设置的值。当我得到“settings”对象时,CLIENT
没有属性“CLIENT”
我错过了什么?对我来说,唯一的区别是TEST是dict,而client是字符串类型的变量 这确实是因为设置必须使用所有大写字母。具体规定如下: 没有什么能阻止你为自己的Django应用程序创建自己的设置。只需遵循以下准则:
- 设置名称必须全部为大写
django.conf.settings
实际上不是一个模块,而是一个基于该模块动态创建的类;仅读取所有大写字母中的变量
(还要注意,从风格上讲,这是有意义的;根据定义,设置是常量,Python风格是将常量放在所有大写中。)您没有声明
client
变量。您确实有client\u name
这不应该是django\u设置。client\u name
?(因此,client\u name
而不是client
)?请注意,您输入了一个错误(ENVIRONMENT
->ENVIRONMENT
)。对不起,伙计们,这两个都是我在这里输入的错误。实际代码没有typos@WillemVanOnsem我检查了一百万次,也不能使用django_设置。否则,测试['CLIENT']
。是否有可能与客户没有资本化有关?我没有看到这样的参考资料,但我已经没有想法了