是否可以回滚 Laravel 中的特定迁移?
例如:
如果我进行了四个迁移,例如 M1、M2、M3 和 M4,后来我决定在 M2 中添加更多字段。可以直接回滚到M2吗?或者直接编辑现有的 M2 迁移文件?
最佳答案
最佳实践是@Farkie 的评论,创建一个新的迁移。 但如果你真的想破解,Laravel 回滚迁移的方式是这样的:在迁移表上有一个名为“batch”的列,因此当执行回滚时,所有具有最大批号的记录都将被回滚,并且回滚的迁移的记录将从迁移表中删除。
一种破解方法可能是:
如果迁移表如下:
migration | batch
===========================
M1 | 1
M2 | 1
M3 | 1
M4 | 1
编辑表格,使其看起来像这样
migration | batch
===========================
M1 | 1
M2 | 2
M3 | 2
M4 | 2
因此,回滚时它将回滚 M2、M3 和 M4,进行更改并再次迁移
关于php - 回滚特定迁移?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34622791/