向下迁移您最新的迁移

juz*_*ode 5 migration typeorm

首先是理论背景:

如果我创建 3 个新的迁移文件,这些文件会在 I 之后更改 3 个表migrate up,那么应该migrate down恢复受最新迁移影响的所有 3 个表,还是只恢复最后一个受影响的表?
我猜前者应该发生

问题:

typeormtypeorm migrate:revert,它只影响最新迁移影响的最后一个表,所以我想知道我的猜测是否正确。一般来说,通常的行为是什么migrate down(无论使用什么 ORM)。

这是预期的行为还是有可能的解决方案来typeorm跟踪最新的迁移更改以恢复最新迁移中的所有更改?

我在他们的文档中找到了这一点:

如果由于某种原因想要恢复更改,可以运行: typeorm migration:revert 该命令将在最近执行的迁移中向下执行。如果需要恢复多个迁移,则必须多次调用此命令。

但是,如果我的期望是真的,那么一个 orm 应该已经拥有这样做的工具。

juz*_*ode 3

AFAIK,typeorm 目前还没有这个功能,你可以通过迁移来迁移你的东西(一次一个迁移文件内容)。

  • 稍微修正一下:不是逐表向下迁移,而是逐个迁移向下迁移。如果您为每个表创建了单独的迁移,那么每个迁移只会影响一个表,但它始终会在迁移中运行“down”函数并影响通过该迁移创建的所有表。 (2认同)