首页 > 其他 > 详细

flask配置文件的几种方法

时间:2018-10-14 12:59:22      阅读:197      评论:0      收藏:0      [点我收藏+]

配置文件的参数

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,
}

导入配置文件的几种策略

app.config[‘DEBUG‘] = True

PS: 由于Config对象本质上是字典,所以还可以使用app.config.update(...)

app.config.from_pyfile("python文件名称")
如:
settings.py/
DEBUG = True

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

app.config.from_envvar("环境变量名称")

环境变量的值为python文件名称名称,内部调用from_pyfile方法

app.config.from_json("json文件名称")

JSON文件名称,必须是json格式,因为内部会执行json.loads

app.config.from_mapping({‘DEBUG‘:True})

字典格式

app.config.from_object("python类或类的路径")

app.config.from_object(pro_flask.settings.TestingConfig)

settings.py/

class Config(object):
DEBUG = False
TESTING = False
DATABASE_URI = sqlite://:memory:

class ProductionConfig(Config):
DATABASE_URI = mysql://user@localhost/foo

class DevelopmentConfig(Config):
DEBUG = True

class TestingConfig(Config):
TESTING = True

PS: 从sys.path中已经存在路径开始写


PS: settings.py文件默认路径要放在程序root_path目录,如果instance_relative_config为True,则就是instance_path目录配置文件

 

flask配置文件的几种方法

原文:https://www.cnblogs.com/louyifei0824/p/9785693.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!