소스 검색

修改Bug

yjp 11 달 전
부모
커밋
83b853e713
1개의 변경된 파일11개의 추가작업 그리고 3개의 파일을 삭제
  1. 11 3
      operations/operations.go

+ 11 - 3
operations/operations.go

@@ -105,17 +105,25 @@ func (op *Operations) NewSession() DBOperations {
 }
 
 func (op *Operations) AutoMigrate(tables ...Table) error {
-	dbModels := make([]any, 0)
+	tx := op.processDB.Begin()
+
 	for _, table := range tables {
 		dbModel, err := table.ToDBModel()
 		if err != nil {
+			tx.Rollback()
 			return err
 		}
 
-		dbModels = append(dbModels, dbModel)
+		err = tx.Table(table.TableName).AutoMigrate(dbModel)
+		if err != nil {
+			tx.Rollback()
+			return err
+		}
 	}
 
-	return op.processDB.AutoMigrate(dbModels...)
+	tx.Commit()
+
+	return nil
 }
 
 func (op *Operations) Table(name string, args ...any) DBOperations {