用途:把 Advanced Alchemy 持久化层接入 Flask 应用,覆盖配置、会话管理与迁移命令。
主要能力:支持 SQLAlchemySyncConfig(默认推荐)与 SQLAlchemyAsyncConfig;提供 Flask 会话访问辅助;支持多数据库绑定(bind_key);提供 FlaskServiceMixin 及其 jsonify() 序列化辅助;迁移接入扩展后可使用 flask database 命令。
使用方式:用 AdvancedAlchemy 初始化并绑定 app,例如 from advanced_alchemy.extensions.flask import AdvancedAlchemy, SQLAlchemySyncConfig;alchemy = AdvancedAlchemy(SQLAlchemySyncConfig(connection_string="sqlite:///local.db", commit_mode="autocommit"), app)。commit_mode 需显式设置:manual、autocommit 或 autocommit_include_redirect。会话应在请求或应用上下文中打开并干净关闭,避免模块级全局状态;在路由边界把 Flask 查询参数转换为 Advanced Alchemy 过滤器;仅在确实需要多库时使用 bind_key;CRUD 密集服务可用 FlaskServiceMixin 简化响应。
适用场景:Flask 应用的数据库访问、服务层封装与迁移管理。
限制:在同步路由中使用异步会话被文档标注为实验性,需谨慎;异步配置仅在有意且受支持时选用。相关持久化、服务、CLI 与数据填充细节可参考 advanced-alchemy-repositories、advanced-alchemy-services、advanced-alchemy-cli、advanced-alchemy-database-seeding。