如何配置flask
flask的配置方法,有很多种,这里只介绍4中,推荐使用类的形式,给flask做配置
1、直接给app对象赋值属性
from flask import Flask
app = Flask(__name__)
# 方式1(不推荐),因为他只能配置两个配置项,一个是debug 一个是secret_key
app.debug = True # 开启后,更改flask的文件,flask会自动重启
app.secret_key = '2fdfqefe0qjer034rj3'
@app.route("/")
def index():
return "hello world!"
if __name__ == '__main__':
app.run()
2、以字典的形式,给flask做配置
from flask import Flask
app = Flask(__name__)
#方式2 字典的形式,这个里面就可以对所有的flask配置项做配置
app.config["DEBUG"] = True
@app.route("/")
def index():
return "hello world!"
if __name__ == '__main__':
app.run()
3、以文件的形式,给flask做配置(Django就是用这种方法)
先创建setting.py文件
# settings.py
DEBUG = True
使用该配置文件
from flask import Flask
app = Flask(__name__)
#方式3 以文件的形式,在form_pyfile(里面传递配文件的路径)
app.config.from_pyfile("settings.py")
@app.route("/")
def index():
return "hello world!"
if __name__ == '__main__':
app.run()
4、以类的形式,给flask做配置(推荐)
先创建配置文件,之后在配置文件中书写不同的配置类
# setobj.py
class Base:
#通用配置写在base类中。
# 正式站和测试都继承我这个base类。
# 正式站和测试有区别的配置,就写在各自的类中
pass
class settings(Base):
DEBUG = True
class Test(Base):
DEBUG = False
然后导入配置文件中的配置类
from flask import Flask
app = Flask(__name__)
#方式4 以类的形式,那为什么推荐大家使用这个呢?因为他可以实现一个文件多个配置,而且减少测试与上线更改的配置项
app.config.from_object("setobj.settings")
@app.route("/")
def index():
return "jason is dsb"
if __name__ == '__main__':
app.run()