金字塔设置类型转换

问题描述 投票:0回答:1

我正在从金字塔的registry.settings中获得一些设置。不幸的是,我不知道为什么某些设置(主要是金字塔特定的设置)会自动转换,而另一些设置(我的自定义设置)却不能自动转换。

[development.ini包含:

pyramid.reload_templates = true
stripe.enabled = false

我最终得到了像这样的设置字典:

{
  "pyramid.reload_templates": True,
  "stripe.enabled": "false",
}

如何将我的条目也标记为“转换为bool”?

python pyramid
1个回答
0
投票

在main()函数中,将这个键/值对作为设置,并且必须进行必要的类型转换,然后再将字典作为设置传递给Configurator。例如:

[app:main]
debug_frobnosticator = True

def main(global_config, **settings):
    from pyramid.settings import asbool
    debug_frobnosticator = asbool(settings.get(
        'debug_frobnosticator', 'false'))
    settings['debug_frobnosticator'] = debug_frobnosticator
    config = Configurator(settings=settings)

asbool(s)如果字符串输入s的大小写减小的值为真字符串,则返回布尔值True。如果s已经是布尔值True或False之一,则将其返回。

© www.soinside.com 2019 - 2024. All rights reserved.