0

在 sqlalchemy-migrate 存储库中,我们可以将 .sql 文件而不是 .py 文件放在版本文件夹下,用于升级/降级数据库架构。

001_mysql_downgrade.sql
001_mysql_upgrade.sql

在alembic中是否存在相同的功能?如果是的话,有人可以解释一下该怎么做吗?

谢谢

4

1 回答 1

1

您可以在您的 upgrade() 和 downgrade() 可调用文件中调用迁移 .py 文件中的这些文件。您可以通过编辑 script.py.mako 文件来自定义这些可调用对象的呈现方式。

但是,要使 .py 文件根本不存在,您需要立即覆盖ScriptDirectoryand Script,除非我们制作了更多的钩子来实现这样的扩展。覆盖这些类是可能的,但目前可能需要猴子补丁。这当然是 Alembic 可以支持的。

于 2013-07-24T22:14:05.333 回答