配置用于控制应用行为,可从对象、文件、环境变量等载入。
加载方式:
app.config.from_mapping(SECRET_KEY="dev", DEBUG=True) app.config.from_object("settings.Config") # 从对象 app.config.from_pyfile("config.py", silent=True) # 从文件
环境变量前缀:
from dotenv import load_dotenv; load_dotenv() # 导入后可在 .env 中定义 FLASK_XXX 或自定义前缀
常见配置:
多环境配置示例:
class Base: SECRET_KEY = "dev" JSON_SORT_KEYS = False class Dev(Base): DEBUG = True class Prod(Base): DEBUG = False # app/__init__.py app.config.from_object("settings.Dev")
实例配置:使用 Flask(__name__, instance_relative_config=True) 可从 instance/config.py 读取敏感配置。
Flask(__name__, instance_relative_config=True)
instance/config.py