Sqlalchemy Alembic单个数据库的几个模块
我们需要构建一个可拆分为多个模块的大型应用程序Sqlalchemy Alembic单个数据库的几个模块,sqlalchemy,alembic,Sqlalchemy,Alembic,我们需要构建一个可拆分为多个模块的大型应用程序 App - Module1 --> AppDb - Module2 --> AppDb - Module3 --> AppDb 每个模块,我们要添加alembic版本,所有模块连接到单个数据库。但是我们不能添加修订,因为它与其他模块的修订冲突(因为所有版本都存储在同一个表中,所以迁移相互冲突)。如果在每个模块1中使用单独的简单迁移,Module2和Module3各有其自己的env.py(或类似),解
App
- Module1 --> AppDb
- Module2 --> AppDb
- Module3 --> AppDb
每个模块,我们要添加alembic版本,所有模块连接到单个数据库。但是我们不能添加修订,因为它与其他模块的修订冲突(因为所有版本都存储在同一个表中,所以迁移相互冲突)。如果在每个
模块1
中使用单独的简单迁移,Module2
和Module3
各有其自己的env.py
(或类似),解决方案可以是使用version\u table
参数来覆盖版本表的名称
i、 e.将env.py
修改为
context.configure(
connection=connection,
target_metadata=target_metadata,
version_table='alembic_module1_version'
)