Configuration
配置用于控制应用行为,可从对象、文件、环境变量等载入。
加载方式:
python
app.config.from_mapping(SECRET_KEY="dev", DEBUG=True)
app.config.from_object("settings.Config") # 从对象
app.config.from_pyfile("config.py", silent=True) # 从文件环境变量前缀:
python
from dotenv import load_dotenv; load_dotenv()
# 导入后可在 .env 中定义 FLASK_XXX 或自定义前缀常见配置:
- SECRET_KEY:会话签名、CSRF 等
- DEBUG/TESTING/ENV
- 数据库 URI、缓存配置、日志等级
多环境配置示例:
python
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 读取敏感配置。