• flask配置文件方式


      如果以后遇到一个类,并且实例化对象后可以设置key 和value:我们应该想到这个类可能有__setitem__(self,key,value)方法,或者这个类继承了Dict类

      如果重写了构造方法:一定要执行dict构造方法

    class Func(dict):
        def __init__(self,val):
            dict.__init__(self,val)

      flask.config.Config对象(继承字典),默认配置为:

    {
            'DEBUG':                                get_debug_flag(default=False),  是否开启Debug模式
            '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.config['SESSION_COOKIE_NAME'] = 'session_lvning'
    #直接在应用中的config["xxx"] 写键值对

      方式二:

     app.config.from_pyfile('settings.py')

      方式三:

     import os
     os.environ['FLAKS-SETTINGS'] = 'settings.py'
     app.config.from_envvar('FLAKS-SETTINGS')

      方式四:

    app.config.from_object('settings.DevConfig')
    #可以更方便地切换测试环境,开发环境或者线上环境等
    settings.py
    class BaseConfig(object):
        NNN = 123
    class TestConfig(BaseConfig):
        DB = '127.0.0.1'
    class DevConfig(BaseConfig):
        DB = '192.168.1.1'
    class ProConfig(BaseConfig):
        DB = '47.18.1.1'
  • 相关阅读:
    MRF能量优化
    Django:model中的ForeignKey理解
    Django:常见的orm操作
    Django:在模板中获取当前url信息
    Django:haystack全文检索详细教程
    Django:全文检索功能可参考博客
    看电影学英语
    Markdown中怎么上传图片
    Mosquitto的安装、配置、测试
    Django:评论文章后局部刷新评论区
  • 原文地址:https://www.cnblogs.com/sxh-myblogs/p/8202736.html
Copyright © 2020-2023  润新知