欢迎来到Cecilia陈的博客

孤独,是人一生最好的修行。

05 flask 四种配置方式

Flask四种配置文件的方式

1.对象点属性的方式
	只能配置app.debug
		   app.secret_key

2.以字典的形式(key必须大写)
	app.config[''] 

3.以文件的形式(from_pyfile('文件名'))
	app.config.from_pyfile('settings.py')

4.以类的方式(from_object('文件名.类名')) 
app.config.from_object("settings.comment")
from flask import Flask

app = Flask(__name__)

'''
方式一:app.属性=(以对象.的方式)
方式二:app.config[''](以字典的方式)
方式三:以文件的形式(settings)
方式四:类的方式

'''

# 1. 方式一:(只能对下面两个属性进行这种方式的配置)---以对象.的方式
# Flask不像django是支持热启动的(pycharm环境中)
# 配置app.debug = True在每次修改文件代码时都会自动重启
# app.debug = True
# app.secret_key = 'hdkhdk'
#
#
# # 2.方式二:以字典的形式(字典的key必须全大写,所有的配置都可以用字典的形式配置)
# app.config['DEBUG'] = True
#
#
# # 3.以文件的形式(settings文件中配置也要大写)
# app.config.from_pyfile('settings.py')


# 4.类的方式(保存的是类的路径)
app.config.from_object("settings.comment")

@app.route('/')
def index():
    return 'aaa'


if __name__ == '__main__':
    app.run()

flask中的配置文件是一个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,
    }
posted @ 2020-02-03 15:40  Cecilia陈  阅读(210)  评论(0)    收藏  举报