将多个迁移压缩为一个

时间:2014-12-18 17:52:32

标签: python alembic

我做了多次小迁移。

  1. 添加A列
  2. 删除A列
  3. 添加A列
  4. 是否可以将这些迁移压缩成一个?

1 个答案:

答案 0 :(得分:6)

没有自动的方法,但手动完成它非常简单。例如,您具有以下迁移A到E,并且所有迁移都应用于数据库(当前为E)。你想通过E压缩C。

A > B > C > D > E
  1. upgradedowngrade函数的内容从C和D复制到E.维护操作顺序,并删除冗余操作(在您的示例中,您实际上只是最终得到了E)的内容。
  2. 将E的down_revision更改为指向B而不是D.
  3. 删除不再连接到图表的C和D.