mirror of
https://github.com/go-admin-team/go-admin.git
synced 2026-09-21 18:20:50 +00:00
@@ -1,3 +1,5 @@
|
||||
// +build !sqlite3
|
||||
|
||||
package database
|
||||
|
||||
func Setup(driver string) {
|
||||
@@ -7,12 +9,6 @@ func Setup(driver string) {
|
||||
db.Setup()
|
||||
}
|
||||
|
||||
//TODO: 如果需要sqlite3请开启下面注释
|
||||
//if dbType == "sqlite3" {
|
||||
// var db = new(SqLite)
|
||||
// db.Setup()
|
||||
//}
|
||||
|
||||
if dbType == "postgres" {
|
||||
var db = new(PgSql)
|
||||
db.Setup()
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
// +build sqlite3
|
||||
|
||||
package database
|
||||
|
||||
func Setup(driver string) {
|
||||
dbType := driver
|
||||
if dbType == "mysql" {
|
||||
var db = new(Mysql)
|
||||
db.Setup()
|
||||
}
|
||||
|
||||
if dbType == "sqlite3" {
|
||||
var db = new(SqLite)
|
||||
db.Setup()
|
||||
}
|
||||
|
||||
if dbType == "postgres" {
|
||||
var db = new(PgSql)
|
||||
db.Setup()
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,7 @@
|
||||
package database
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"log"
|
||||
"os"
|
||||
"time"
|
||||
@@ -12,8 +13,10 @@ import (
|
||||
"gorm.io/gorm/logger"
|
||||
"gorm.io/gorm/schema"
|
||||
|
||||
"go-admin/common/config"
|
||||
"go-admin/common/global"
|
||||
"go-admin/tools/config"
|
||||
"go-admin/tools"
|
||||
toolsConfig "go-admin/tools/config"
|
||||
)
|
||||
|
||||
type SqLite struct {
|
||||
@@ -24,7 +27,15 @@ func (e *SqLite) Setup() {
|
||||
|
||||
global.Source = e.GetConnect()
|
||||
log.Println(global.Source)
|
||||
global.Eloquent, err = e.Open(e.GetDriver(), &gorm.Config{
|
||||
db, err := sql.Open("sqlite3", global.Source)
|
||||
if err != nil {
|
||||
global.Logger.Fatal(tools.Red(e.GetDriver()+" connect error :"), err)
|
||||
}
|
||||
global.Cfg.SetDb(&config.DBConfig{
|
||||
Driver: "sqlite3",
|
||||
DB: db,
|
||||
})
|
||||
global.Eloquent, err = e.Open(e.GetConnect(), &gorm.Config{
|
||||
NamingStrategy: schema.NamingStrategy{
|
||||
SingularTable: true,
|
||||
},
|
||||
@@ -40,7 +51,7 @@ func (e *SqLite) Setup() {
|
||||
log.Fatalf("database error %v", global.Eloquent.Error)
|
||||
}
|
||||
|
||||
if config.LoggerConfig.EnabledDB {
|
||||
if toolsConfig.LoggerConfig.EnabledDB {
|
||||
global.Eloquent.Logger = logger.New(log.New(os.Stdout, "\r\n", log.LstdFlags), logger.Config{
|
||||
SlowThreshold: time.Second,
|
||||
Colorful: true,
|
||||
@@ -51,14 +62,13 @@ func (e *SqLite) Setup() {
|
||||
|
||||
// 打开数据库连接
|
||||
func (*SqLite) Open(conn string, cfg *gorm.Config) (db *gorm.DB, err error) {
|
||||
eloquent, err := gorm.Open(sqlite.Open(conn), cfg)
|
||||
return eloquent, err
|
||||
return gorm.Open(sqlite.Open(conn), cfg)
|
||||
}
|
||||
|
||||
func (e *SqLite) GetConnect() string {
|
||||
return config.DatabaseConfig.Source
|
||||
return toolsConfig.DatabaseConfig.Source
|
||||
}
|
||||
|
||||
func (e *SqLite) GetDriver() string {
|
||||
return config.DatabaseConfig.Driver
|
||||
return toolsConfig.DatabaseConfig.Driver
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user