瀏覽代碼

Refactor reuse existing database connection

Jinzhu 9 年之前
父節點
當前提交
a4e0ef6509
共有 2 個文件被更改,包括 2 次插入7 次删除
  1. 1 5
      main.go
  2. 1 2
      main_test.go

+ 1 - 5
main.go

@@ -56,11 +56,7 @@ func Open(dialect string, args ...interface{}) (DB, error) {
 		}
 		dbSql, err = sql.Open(driver, source)
 	case sqlCommon:
-		if reflect.TypeOf(value).Kind() == reflect.Ptr {
-			source = reflect.ValueOf(value).Elem().FieldByName("dsn").String()
-		} else {
-			source = reflect.ValueOf(value).FieldByName("dsn").String()
-		}
+		source = reflect.Indirect(reflect.ValueOf(value)).FieldByName("dsn").String()
 		dbSql = value
 	}
 

+ 1 - 2
main_test.go

@@ -8,8 +8,8 @@ import (
 
 	_ "github.com/denisenkom/go-mssqldb"
 	testdb "github.com/erikstmartin/go-testdb"
-	"github.com/jinzhu/gorm"
 	_ "github.com/go-sql-driver/mysql"
+	"github.com/jinzhu/gorm"
 	"github.com/jinzhu/now"
 	_ "github.com/lib/pq"
 	_ "github.com/mattn/go-sqlite3"
@@ -567,7 +567,6 @@ func TestOpenExistingDB(t *testing.T) {
 	if db.Where("name = ?", "jnfeinstein").First(&user).Error == gorm.RecordNotFound {
 		t.Errorf("Should have found existing record")
 	}
-
 }
 
 func BenchmarkGorm(b *testing.B) {