首页技术文章正文

Flask怎样获取和使用配置信息?

更新时间:2023-04-20 来源:黑马程序员 浏览量:

IT培训班

Flask是一个用Python编写的微框架,它可以帮助开发者在短时间内完成一个功能丰富的Web应用程序。在Flask中,若需要在程序中使用配置信息,以便对程序的一些行为进行定制,则可以采用多种方式将配置信息保存到Flask类对象的config属性中。config属性的值是一个flask.Config类的对象,flask.Config类是一个Python字典子类,它的工作方式类似于字典,既可以通过访问字典元素的方式使用配置信息,也可以通过flask.Config类提供的导入配置项的方法使用配置信息。

本节我们介绍Flask配置信息的使用,通过访问字典元素、导入文件和导入对象这3种方式使用配置信息。

通过访问字典元素的方式使用配置信息

可以通过访问字典元素的方式获取Flask程序的配置项,并重新为该配置项赋值。例如,通过为Flask类的对象app设置配置项TESTING,以启用测试模式,代码如下所示。

app.config['TESTING'] = True

若希望一次修改多个配置项,则可以调用flask.Config从父类继承的update()方法实现。例如,为Flask类的对象app设置配置项TESTING和SECRET_KEY,从而使程序启用测试模式以及设置密钥,具体代码如下所示。

app.config.update(
TESTING=True,
SECRET_KEY=b'_5#y2L"F4Q8z\n\xec]/'
)

通过导入文件的方式使用配置信息

可以将所有的配置项存入单独的文件中,之后将该文件导入到Flask程序。flask.Config类中提供了一些从文件中导入配置项的方法,关于这些方法的介绍如下。

  ●from_file():从指定的文件中导入配置项,并更新配置项的值。

  ●from_pyfile():从.py文件中导入配置项,并更新配置项的值。

#通过from_file()方法从config.json文件中导入配置项
import json
app.config.from_file("config.json", load=json.load)
#通过from_pyfile()方法从config.py文件中导入配置项
app.config.from_pyfile("config.py")

可以通过定义Python类属性的方式设置配置项,之后将包含配置项的Python类的对象导入到Flask程序中。flask.Config类中提供了一些从Python类中导入配置项的方法

from_object(),from_object()方法用于从给定对象中导入配置项,并更新配置项的值。需要说明的是,from_object()方法只会加载Python类中以大写字母命名的属性。如果Python类中有一个@property属性,则该类在被传递给from_object()方法之前需要进行实例化。

通过导入对象的方式使用配置信息

定义一个包含两个配置项TESTING和SECRET_KEY的类Settings,之后调用from_object(O方法从Settings类中加载配置项,并在程序中使用这些配置信息,具体代码如下所示。


分享到:
在线咨询 我要报名
和我们在线交谈!