mirror of
https://github.com/go-admin-team/go-admin.git
synced 2026-10-13 17:05:07 +00:00
feat: add global & logger
This commit is contained in:
+34
-58
@@ -4,24 +4,52 @@ import (
|
||||
"bytes"
|
||||
_ "github.com/go-sql-driver/mysql" //加载mysql
|
||||
"github.com/jinzhu/gorm"
|
||||
log "github.com/sirupsen/logrus"
|
||||
"go-admin/global/orm"
|
||||
"go-admin/tools/config"
|
||||
|
||||
"log"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
var Eloquent *gorm.DB
|
||||
|
||||
var (
|
||||
DbType string
|
||||
Host string
|
||||
Port int
|
||||
Name string
|
||||
Name string
|
||||
Username string
|
||||
Password string
|
||||
)
|
||||
|
||||
func Setup() {
|
||||
func (e *Mysql) Setup() {
|
||||
|
||||
var err error
|
||||
var db Database
|
||||
|
||||
db = new(Mysql)
|
||||
orm.MysqlConn = db.GetConnect()
|
||||
log.Info(orm.MysqlConn)
|
||||
orm.Eloquent, err = db.Open(DbType, orm.MysqlConn)
|
||||
|
||||
if err != nil {
|
||||
log.Fatalf("%s connect error %v", DbType, err)
|
||||
} else {
|
||||
log.Printf("%s connect success!", DbType)
|
||||
}
|
||||
|
||||
if orm.Eloquent.Error != nil {
|
||||
log.Fatalf("database error %v", orm.Eloquent.Error)
|
||||
}
|
||||
|
||||
orm.Eloquent.LogMode(true)
|
||||
}
|
||||
|
||||
type Mysql struct {
|
||||
}
|
||||
|
||||
func (e *Mysql) Open(dbType string, conn string) (db *gorm.DB, err error) {
|
||||
return gorm.Open(dbType, conn)
|
||||
}
|
||||
|
||||
func (e *Mysql) GetConnect() string {
|
||||
|
||||
DbType = config.DatabaseConfig.Dbtype
|
||||
Host = config.DatabaseConfig.Host
|
||||
@@ -30,38 +58,6 @@ func Setup() {
|
||||
Username = config.DatabaseConfig.Username
|
||||
Password = config.DatabaseConfig.Password
|
||||
|
||||
if DbType != "mysql" {
|
||||
log.Println("db type unknow")
|
||||
}
|
||||
var err error
|
||||
|
||||
conn := GetMysqlConnect()
|
||||
|
||||
log.Println(conn)
|
||||
|
||||
var db Database
|
||||
if DbType == "mysql" {
|
||||
db = new(Mysql)
|
||||
Eloquent, err = db.Open(DbType, conn)
|
||||
|
||||
} else {
|
||||
panic("db type unknow")
|
||||
}
|
||||
if err != nil {
|
||||
log.Fatalf("%s connect error %v", DbType, err)
|
||||
} else {
|
||||
log.Printf("%s connect success!", DbType)
|
||||
}
|
||||
|
||||
|
||||
if Eloquent.Error != nil {
|
||||
log.Fatalf("database error %v", Eloquent.Error)
|
||||
}
|
||||
|
||||
Eloquent.LogMode(true)
|
||||
}
|
||||
|
||||
func GetMysqlConnect() string {
|
||||
var conn bytes.Buffer
|
||||
conn.WriteString(Username)
|
||||
conn.WriteString(":")
|
||||
@@ -76,23 +72,3 @@ func GetMysqlConnect() string {
|
||||
conn.WriteString("?charset=utf8&parseTime=True&loc=Local&timeout=1000ms")
|
||||
return conn.String()
|
||||
}
|
||||
|
||||
type Database interface {
|
||||
Open(dbType string, conn string) (db *gorm.DB, err error)
|
||||
}
|
||||
|
||||
type Mysql struct {
|
||||
}
|
||||
|
||||
func (*Mysql) Open(dbType string, conn string) (db *gorm.DB, err error) {
|
||||
eloquent, err := gorm.Open(dbType, conn)
|
||||
return eloquent, err
|
||||
}
|
||||
|
||||
type SqlLite struct {
|
||||
}
|
||||
|
||||
func (*SqlLite) Open(dbType string, conn string) (db *gorm.DB, err error) {
|
||||
eloquent, err := gorm.Open(dbType, conn)
|
||||
return eloquent, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user