从配置文件加载配置参数 除了在应用程序代码中硬编码配置参数,还可以从外部文件加载配置参数。Flask支持从Python文件、JSON文件、YAML文件等文件格式中加载配置参数。
要从Python文件中加载配置参数,可以在文件中定义一个名为'config'的字典对象,并将其导入到应用程序中。下面是示例代码:
代码语言:javascript复制# config.py
DEBUG = True
SECRET_KEY = 'my-secret-key'
# app.py
from flask import Flask
from config import config
app = Flask(__name__)
app.config.update(config)
if __name__ == '__main__':
app.run()
在上面的示例中,我们定义了一个名为'config'的字典对象,包含了DEBUG和SECRET_KEY配置参数。我们然后在'app.py'文件中导入'config'对象,并使用'app.config.update'方法将其应用于应用程序的配置参数中。
要从JSON文件中加载配置参数,可以使用'json'模块读取JSON文件,并将其转换为字典对象。下面是示例代码:
代码语言:javascript复制# config.json
{
"DEBUG": true,
"SECRET_KEY": "my-secret-key"
}
# app.py
import json
from flask import Flask
app = Flask(__name__)
with open('config.json', 'r') as f:
config = json.load(f)
app.config.update(config)
if __name__ == '__main__':
app.run()
在上面的示例中,我们使用'json'模块从'config.json'文件中读取配置参数,并将其转换为字典对象。我们然后使用'app.config.update'方法将这些配置参数应用于应用程序的配置参数中。
要从YAML文件中加载配置参数,可以使用'pyyaml'模块读取YAML文件,并将其转换为字典对象。下面是示例代码:
代码语言:javascript复制# config.yaml
DEBUG: true
SECRET_KEY: my-secret-key
# app.py
import yaml
from flask import Flask
app = Flask(__name__)
with open('config.yaml', 'r') as f:
config = yaml.load(f, Loader=yaml.FullLoader)
app.config.update(config)
if __name__ == '__main__':
app.run()
在上面的示例中,我们使用'pyyaml'模块从'config.yaml'文件中读取配置参数,并将其转换为字典对象。我们然后使用'app.config.update'方法将这些配置参数应用于应用程序的配置参数中。