|
|
@@ -93,6 +93,27 @@ func (m *Migrator) Rollback() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+// Reset 回滚所有的迁移操作
|
|
|
+func (m *Migrator) Reset() {
|
|
|
+
|
|
|
+ // 获取所有的迁移数据
|
|
|
+ migrations := []Migration{}
|
|
|
+ m.DB.Order("id desc").Find(&migrations)
|
|
|
+
|
|
|
+ // 回滚迁移操作
|
|
|
+ if !m.rollbackMigrations(migrations) {
|
|
|
+ console.Success("[migrations] table is empty, nothing to rollback")
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+// Refresh 回滚所有的迁移操作, 并重新执行所有的迁移操作
|
|
|
+func (m *Migrator) Refresh() {
|
|
|
+ // 回滚所有的迁移操作
|
|
|
+ m.Reset()
|
|
|
+ // 重新执行所有的迁移操作
|
|
|
+ m.Up()
|
|
|
+}
|
|
|
+
|
|
|
// 回滚迁移操作
|
|
|
func (m *Migrator) rollbackMigrations(migrations []Migration) bool {
|
|
|
|