Flask项目配置
Marsh 摸不到门

本教材由知了传课辛苦制作而成,仅供学习使用,请勿用于商业用途!如进行转载请务必注明出处!谢谢!

项目配置

一、设置为 DEBUG 模式:

默认情况下flask不会开启DEBUG模式,开启DEBUG模式后,flask 会在每次保存代码的时候自动的重新载入代码,并且如果代码有错误,会在终端进行提示。
image.png
如果一切正常,会在终端打印以下信息:

* Restarting with stat
* Debugger is active!
* Debugger pin code: 294-745-044
* Running on http://0.0.0.0:9000/ (Press CTRL+C to quit)

需要注意的是,只能在开发环境下开启DEBUG模式,因为DEBUG模式会带来非常大的安全隐患。

二、配置文件:

Flask项目的配置,都是通过app.config对象来进行配置的。比如要配置一个项目的SECRET_KEY,那么可以使用app.config['SECRET_KEY'] = "xxx"来进行设置,在Flask项目中,有四种方式进行项目的配置:

  1. 直接硬编码:

    app = Flask(__name__)
    app.config['SECRET_KEY'] = "xxx"
    
  2. 因为app.configflask.config.Config的实例,而Config类是继承自dict,因此可以通过update方法:

    app.config.update(
       DEBUG=True,
       SECRET_KEY='...'
    )
    
  3. 如果你的配置项特别多,你可以把所有的配置项都放在一个模块中,然后通过加载模块的方式进行配置,假设有一个settings.py模块,专门用来存储配置项的,此时你可以通过app.config.from_object()方法进行加载,并且该方法既可以接收模块的的字符串名称,也可以模块对象:

    # 1. 通过模块字符串
    app.config.from_object('settings')
    # 2. 通过模块对象
    import settings
    app.config.from_object(settings)
    
  4. 也可以通过另外一个方法加载,该方法就是app.config.from_pyfile(),该方法传入一个文件名,通常是以.py结尾的文件,但也不限于只使用.py后缀的文件:

    app.config.from_pyfile('settings.py',silent=True)
    # silent=True表示如果配置文件不存在的时候不抛出异常,默认是为False,会抛出异常。

Flask项目内置了许多的配置项,所有的内置配置项,可以在这里查看

 评论