项目的简单设置功能。
SmallSettings的Python项目详细描述
smallsettings在许多项目(特别是web应用程序)中需要进行设置。对于应用程序,我们需要3种设置。
*应用程序设置(例如:应用程序名称)
*环境设置(例如:数据库的URL)
*动态设置(例如:我们今天要显示的广告)
设置的第二个问题是包装某些设置。有时候你必须在envoritement设置中包装app设置中的var,有时候你必须做oposit。smallsettings有一个解决方案。
settings类
==
首先我们看“settings”类。
>;从smallsettings导入设置
>;settings=settings({'base_settings':1})
>;设置[“基本设置”]
1
>;settings['something']
'newsetting2'
>第二个是“路径”类。从smallsettings导入路径从smallsettings导入路径从smallsettings导入路径路径
>>;路径=路径({'base':'/tmp'})
>;路径['base']]
'/tmp'
>>;路径['home']='/home'='/home'>
>;路径['home']
>>
'/home'>
>
><
>>>
>;第二个是从smalls路径路径br/>但使用前一个var是slite不同的,因为path s类使用os.path.join:
>;>;paths['me']=['%(home)s','me']
>;>;paths['me']
'/home/me'
设置2'
>;合并了['me']
'/home/me'
=
>如果要使用'modulename.settings',其中'modulename'是我们的主模块,而'settings'是我们的settins模块。
>;从smallsettings导入factory
>;factory=factory('modulename','settings')
>;>;settings,paths=factory.make_settings()
它将从modulename/settings/default.py读取设置。此文件应
如下所示:
>;def make_settings(settings,path):
>;settings['name']=“value”
如果要添加一些其他设置文件,如“local.py”,可以执行
此操作:
>;settings,path=factory.make_settings(additional_modules=[('local',,错误])
这是默认行为。bool的意思是“在缺少模块时引发错误”。
*应用程序设置(例如:应用程序名称)
*环境设置(例如:数据库的URL)
*动态设置(例如:我们今天要显示的广告)
settings类
==
首先我们看“settings”类。
>;从smallsettings导入设置
>;settings=settings({'base_settings':1})
>;设置[“基本设置”]
1
>;settings['something']
'newsetting2'
>第二个是“路径”类。从smallsettings导入路径从smallsettings导入路径从smallsettings导入路径路径
>>;路径=路径({'base':'/tmp'})
>;路径['base']]
'/tmp'
>>;路径['home']='/home'='/home'>
>;路径['home']
>>
'/home'>
>
><
>>>
>;第二个是从smalls路径路径br/>但使用前一个var是slite不同的,因为path s类使用os.path.join:
>;>;paths['me']=['%(home)s','me']
>;>;paths['me']
'/home/me'
设置2'
>;合并了['me']
'/home/me'
>如果要使用'modulename.settings',其中'modulename'是我们的主模块,而'settings'是我们的settins模块。
>;从smallsettings导入factory
>;factory=factory('modulename','settings')
>;>;settings,paths=factory.make_settings()
它将从modulename/settings/default.py读取设置。此文件应
如下所示:
>;def make_settings(settings,path):
>;settings['name']=“value”
如果要添加一些其他设置文件,如“local.py”,可以执行
此操作:
>;settings,path=factory.make_settings(additional_modules=[('local',,错误])
这是默认行为。bool的意思是“在缺少模块时引发错误”。