码迷,mamicode.com
首页 > 数据库 > 详细

cmdb 配置

时间:2019-10-04 13:05:42      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:key   com   col   init   img   mamicode   height   客户   djang   

cmdb客户端文件夹创建

客户端:client:
-bin:启动文件
-src:源文件(核心代码)
-conf:配置文件
-lib:全局的一些方法 和配置
-test:测试文件

技术图片

??模仿django一个暴露给用户的settings文件,一个全局配置文件global_settings,然后都可以实现通过settings这个对象点出属性方法也就是自定义配置或者全局配置,所以要创两个配置文件??



??实现第一个功能:集成自定制配置文件和全局配置文件??
在start文件中导入lib文件夹中config文件夹中的config中settings对象,然后Setings这个类要进行实例化,实例化的时候就会触发__init__方法,这个函数里面将custom_settings和global_settings里所有的配置key,
value值都设置到settings对象里面,然后就可以对象点的方式获取到值?????




custom_settigns.py (暴露给用户的配置文件)
USER = root

 

global_settings.py        (全局的配置文件)

EMAIL_USER = test

然后可以先在测试文件test中进行测试一下

s1.py

USER = root
port = 23

s2.py

import s1


print(dir(s1)) #变成字典
# [‘USER‘, ‘__builtins__‘, ‘__cached__‘, ‘__doc__‘, ‘__file__‘, ‘__loader__‘, ‘__name__‘, ‘__package__‘, ‘__spec__‘, ‘port‘]

print(s1)
print(s1.USER)  导入文件也可以点的方式获取到文件中的内容,文件实际上也是个对象,可以通过点的方式来获取值

for key in dir(s1):
    if key.isupper():  # 我们只要大写的,因为配置文件里面规定大写,小写就排除掉
        print(key)

config.py 

将custom_settings和global_settings里所有的配置key,
value值都设置到settings对象里面??
from conf import custom_settings
from . import global_settings
全局配置要放在自定制配置上面,因为这样才会实现全局和局部同一个配置,先加载用户写的配置
class Settings(): def __init__(self): ### 全局设置 for key in dir(custom_settings): if key.isupper(): v = getattr(global_settings, key) # 获取全局配置文件中配置的值,第一个是对象(导入的文件),第二个key,v就是key对应的值 setattr(self, key,v) # self代表的是当前的对象settings,key就是配置文件的大写的配置,v 就是self.配置的值也就是key对应的值,
                        所以这样就可以通过settings这个对象点的方式获取到值
### 自定制配置 for key in dir(custom_settings): if key.isupper(): v = getattr(custom_settings, key) # 第一个是对象,第二个key setattr(self, key,v) # self代表的是当前的对象settings,key就是配置文件的大写的配置,v 就是self.配置的值,所以这样就可以通过settings这个对象点的方式获取到值 settings = Settings()

start.py

start文件中导入config中settings对象??
from lib.config.config import settings

if __name__ == __main__:
    pass

 







cmdb 配置

标签:key   com   col   init   img   mamicode   height   客户   djang   

原文地址:https://www.cnblogs.com/huangxuanya/p/11621819.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!