如何摆脱 Django 中的 configparser.NoOptionError
How to get rid of configparser.NoOptionError in django
DEBUG = eval(ctx.get(CONFIGSECTION, 'DEBUG'))
# MDM Revert before prod!
# DEBUG=True
TEMPLATE_DEBUG = DEBUG
REDIS_SERVER = ctx.get(CONFIGSECTION, 'REDIS_SERVER')
REDIS_DB = ctx.get(CONFIGSECTION, 'REDIS_DB')
我遇到了以下错误
raise NoOptionError(option, section)
configparser.NoOptionError: No option 'debug' in section: 'DEFAULT'
请从 RawConfigParser 派生一个新的配置解析器 class,仅添加新的特殊行为,如下所示:
请阅读这份文件:
https://docs.python.org/3/library/configparser.html
from ConfigParser import RawConfigParser, NoOptionError
from StringIO import StringIO
from collections import defaultdict
class MyConfigParser(RawConfigParser):
def get(self, section, option):
try:
return RawConfigParser.get(self, section, option)
except NoOptionError:
return None
settings=StringIO('''
[Set]
ip=192.0.2.76
verify=yes
[Set2]
ip=192.0.2.74
''')
cfg=MyConfigParser(allow_no_value=True)
cfg.readfp(settings)
assert cfg.get('Set', 'verify') == 'yes'
assert cfg.get('Set2', 'verify') == None
DEBUG = eval(ctx.get(CONFIGSECTION, 'DEBUG'))
# MDM Revert before prod!
# DEBUG=True
TEMPLATE_DEBUG = DEBUG
REDIS_SERVER = ctx.get(CONFIGSECTION, 'REDIS_SERVER')
REDIS_DB = ctx.get(CONFIGSECTION, 'REDIS_DB')
我遇到了以下错误
raise NoOptionError(option, section)
configparser.NoOptionError: No option 'debug' in section: 'DEFAULT'
请从 RawConfigParser 派生一个新的配置解析器 class,仅添加新的特殊行为,如下所示: 请阅读这份文件: https://docs.python.org/3/library/configparser.html
from ConfigParser import RawConfigParser, NoOptionError
from StringIO import StringIO
from collections import defaultdict
class MyConfigParser(RawConfigParser):
def get(self, section, option):
try:
return RawConfigParser.get(self, section, option)
except NoOptionError:
return None
settings=StringIO('''
[Set]
ip=192.0.2.76
verify=yes
[Set2]
ip=192.0.2.74
''')
cfg=MyConfigParser(allow_no_value=True)
cfg.readfp(settings)
assert cfg.get('Set', 'verify') == 'yes'
assert cfg.get('Set2', 'verify') == None