方式一:字段赋值方式导入

1
2
3
4
5
6
7
8
9
10
11
12
13
14
from flask import Flask
 
app = Flask(__name__)
 
app.config["debug"= True
app.secret_key = 'afadfadfaf'
 
@app.route("/")
def index():
    return "hello"
 
 
if __name__ == '__main__':
    app.run()

  缺点:对于极少数字段配置可以使用,多字段配置不可取

方式二:py文件导入

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# app.py<br>from flask import Flask
 
app = Flask(__name__)
 
app.config.from_pyfile("settings.py")  # 指定setting文件
 
@app.route("/")
def index():
    return "hello"
 
 
if __name__ == '__main__':
    app.run()
 
 
# settings.py
 
DEBUG = True
...  

方式三:python类路径方式导入

app.py

1
2
3
4
5
6
7
8
9
10
11
12
13
from flask import Flask
 
app = Flask(__name__)
 
app.config.from_object("test.settings.TestingConfig")    # 系统环境需能找到的模块路径,默认在app同级目录下
 
@app.route("/")
def index():
    return "hello"
 
 
if __name__ == '__main__':
    app.run()

settings.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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  

  推荐配置导入方式,可以根据开发环境灵活配置

默认配置参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
    '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,
}

Flask默认配置参数的更多相关文章

  1. jQuery处理默认配置参数(将一个或多个对象的内容合并到目标对象)

    问题 我们在封装一个函数时, 需要别人传递一个json对象作为参数, 而用户可能只传入部分参数, 这是就可以利用$extend()来与合并到默认JSON参数合并. // 程序需要的参数 var def ...

  2. HBase-site.xml 常见重要配置参数

    HBase 常见重要配置参数 (1) Hbase.rpc.timeout rpc 的超时时间,默认 60s,不建议修改,避免影响正常的业务,在线上环境刚开始配置的是 3 秒,运行半天后发现了大量的 t ...

  3. defaults(默认配置)和mergeConfig(合并config方法)

    axios学习笔记defaults(默认配置)和mergeConfig(合并config方法) 源码地址 找到入口文件 axios/lib/axios.js ... var mergeConfig = ...

  4. Webpack中SplitChunksPlugin 配置参数详解

    代码分割本身和 webpack 没有什么关系,但是由于使用 webpack 可以非常轻松地实现代码分割,所以提到代码分割首先就会想到使用 webopack 实现. 在 webpack 中是使用 Spl ...

  5. Flask实例化的参数 及 对app的配置

    首先展示一下: from flask import Flask app = Flask(__name__) # type:Flask app.config["DEBUG"] = T ...

  6. flask session 使用默认配置修改session不生效问题

    flask session相关 使用flask 默认sessio是存储在浏览器的cookie中,当请求返回时会将session写在cooKie中,但是在写的时候,默认并不是每次都重新写入 比如下例子 ...

  7. Flask的实例化参数及对app的配置

    目录 1.调试模式初测 2.app.config中的其他配置参数详解 3.修改config配置的方式(from_object用法) 3.1直接对app.config进行修改: 3.2使用类的方式导入: ...

  8. flask 第八篇 实例化flask时的参数配置

    Flask 是一个非常灵活且短小精干的web框架 , 那么灵活性从什么地方体现呢? 有一个神奇的东西叫 Flask配置 , 这个东西怎么用呢? 它能给我们带来怎么样的方便呢? 首先展示一下: from ...

  9. Flask入门学习——配置参数的管理方式

    一般来说有这么几种方式: 直接操作config的字典对象 app.config["DEBUG"] = True 使用配置文件加载,直接传入文件名 app.config.from_p ...

  10. Flask对象配置

    Flask的配置就是在 app.config 中添加一个键值对,但是你存进去的键必须是config中应该存在的,如果不再存在的话,它会默认无用,就这么放着 config中有用的key { 'DEBUG ...

随机推荐

  1. 14.java 中缀表达式转后缀表达式

    思路如下: 1.初始化两个栈,运算符栈和中间结果栈 2.从左至右扫描 3.遇到数时直接压入s2 4.遇到运算符时,比较其与s1栈顶的优先级,有如下几种情况: 1)s1为空或栈顶为"(&quo ...

  2. mybatis-plus 时间查询

    QueryWrapper userquery= new QueryWrapper<>(); user.and(true,wrapper -> wrapper.ge("CRE ...

  3. FileZilla链接centos虚拟机不显示问题

    这段时间因为不是很忙,一直想学习一下网络安全方面的技术,准备考个信安中级,网络安全方面经常用到虚拟机,所以及用vm新建虚拟机后,一直发现连不上FileZilla,于是就在网上搜了一下,有一些参考问题, ...

  4. ATX server简介及环境搭建

    简介 atx server 是移动设备管理平台: 搭建这样的一个平台,需要  python3.x + nodejs+rethinkdb,及atxserver2和atxserver2-android-p ...

  5. scrapy框架学习(六)日志设置和数据存储

    日志设置 CRITICAL : 严重错误 ERROR : 一般错误 WARNING : 警告 INFO : 一般的信息 DEBUG : 调试信息 默认的显示级别是DEBUG # 设置错误显示级别 LO ...

  6. unity Android路径的相关部分代码

    using System; using System.Collections; using System.Collections.Generic; using System.IO; using Uni ...

  7. js原型,继承

    javascript是为了成为轻量级的语言而开发的.开发者并没有选择像其他面向对象的语言一样,定义类(class),而是使用了protopype实现继承. 每一个函数在创建时,都会创建它的Protot ...

  8. yaml 文件的读取写

    yaml 是一种数据格式, 它可以和json数据相互转化 . 自动化测试中一般用于做配置文件或是测试用例. 数据的组成, 两种格式: 1. 字典 2. 列表 Eg. config.yaml serve ...

  9. List<Object>转为对象

    List<Object> list = new ArrayList<>(); List<BMSQ> bmsqList = (List<BMSQ>)(Li ...

  10. nop 中创建任务(Task)

    NopCommerce 中Task 原理是服务端开启线程定时跑. 1.在数据表ScheduleTask中添加一条数据, 2.自定义类,继承ITask 即可 using Data.Log4Net; us ...