zoukankan      html  css  js  c++  java
  • Flask_配置文件

    flask中的配置文件是一个flask.config.Config对象(继承字典),默认配置为:

    default_config = ImmutableDict({
        'DEBUG':                                get_debug_flag(default=False),
        'TESTING':                              False,
        'PROPAGATE_EXCEPTIONS':                 None,
        'PRESERVE_CONTEXT_ON_EXCEPTION':        None,
        'SECRET_KEY':                           None,
        'PERMANENT_SESSION_LIFETIME':           timedelta(days=31),
        'USE_X_SENDFILE':                       False,
        'LOGGER_NAME':                          None,
        'LOGGER_HANDLER_POLICY':               'always',
        'SERVER_NAME':                          None,
        'APPLICATION_ROOT':                     None,
        'SESSION_COOKIE_NAME':                  'session',
        'SESSION_COOKIE_DOMAIN':                None,
        'SESSION_COOKIE_PATH':                  None,
        'SESSION_COOKIE_HTTPONLY':              True,
        'SESSION_COOKIE_SECURE':                False,
        'SESSION_REFRESH_EACH_REQUEST':         True,
        'MAX_CONTENT_LENGTH':                   None,
        'SEND_FILE_MAX_AGE_DEFAULT':            timedelta(hours=12),
        'TRAP_BAD_REQUEST_ERRORS':              False,
        'TRAP_HTTP_EXCEPTIONS':                 False,
        'EXPLAIN_TEMPLATE_LOADING':             False,
        'PREFERRED_URL_SCHEME':                 'http',
        'JSON_AS_ASCII':                        True,
        'JSON_SORT_KEYS':                       True,
        'JSONIFY_PRETTYPRINT_REGULAR':          True,
        'JSONIFY_MIMETYPE':                     'application/json',
        'TEMPLATES_AUTO_RELOAD':                None,
    })
    配置文件的实现方式:


    app.secret_key = ['uaresocool']
    app.debug = True
    
    # PS: 由于Config对象本质上是字典,所以还可以使用app.config.update(...)
    app.config.update(DEBUG=True)
    app.config['SECRET_KEY'] = 'uaresocool'
    方式一:属性
    # app.py
    app.config.from.pyfile('settings.py')
    
    # settings.py
    SECRET_KEY = 'uaresobeautiful'
    方式二:基于文件
    # app.py
    import os 
    os.environ['xxx'] = 'settings.py'
    
    app.config.from_envvar('xxx')
    
    # settings.py
    SECRET_KEY = 'uaremyangel'
    方式三:基于环境变量+文件
    # app.py
    app.config.from_json('settings.py')
    
    # settings.py
    # 这里必须是json格式,因为内部会执行json.loads
    {"SECRET_KEY":"uaresb" }
    
    方式四:基于json
    方式四:基于json
    app.config.from_mapping({'SECRET_KEY':'whatareu'})
    方式五:基于字典
    # app.py
    # 使用时只需要修改配置类
    import settings
    app.config.from_object(settings.BaseConfig)
    
    # settings.py
    class BaseConfig(object):
        # 基础配置
        NNN = 1
        AAA = 0
    
    class TestConfig(BaseConfig):
        # 测试环境配置
        AAA = 111
    
    class DevConfig(BaseConfig):
        # 开发环境配置
        AAA = 222
    
    class ProConfig(BaseConfig):
        # 线上环境配置
        AAA = 333
    方式六:基于配置(推荐)
  • 相关阅读:
    Linux 基础与应用教程 003(权限管理命令简单基础)
    Linux 基础与应用教程 002
    Android:监听音键并屏蔽系统的音量调节
    Android:用Seekbar来调节屏幕亮度
    Android:获得一个竖的seekbar
    python之路(4)高阶函数和python内置函数
    python之路(3)函数和匿名函数
    python之路(2)集合(set)和字符串格式化
    python之路(1)数据类型
    SD从零开始03-04
  • 原文地址:https://www.cnblogs.com/Wormhole-f/p/8253189.html
Copyright © 2011-2022 走看看