gorm的问题,为了全局使用db,我定义了全局变量,如果分成多个文件,db对象如何获取?

package main

import (

"fmt"

"github.com/gin-gonic/gin"

"gorm.io/driver/mysql"

"gorm.io/gorm"

"log"

)

var db *gorm.DB

var err error

func main() {

r := gin.Default()

dsn := "root:[email protected](127.0.0.1:3306)/iapplus?charset=utf8mb4&parseTime=True&loc=Local"

db, err = gorm.Open(mysql.Open(dsn), &gorm.Config{})

if err!=nil {

log.Fatal("数据库连接错误")

}

r.GET("/ping/:name", ping)

r.Run("127.0.0.1:8081") // listen and serve on 0.0.0.0:8080

}

func ping(c *gin.Context) {

//c.JSON(200, gin.H{

// "message": "pong",

//})

var user UserModel

db.First(&user)

fmt.Println(user.ID)

fmt.Println(user.Mobile)

c.String(200, "Hello World"+c.Param("name"))

}

回答

定义一个model 包,或者 const 的包

gorm的问题,为了全局使用db,我定义了全局变量,如果分成多个文件,db对象如何获取?

然后在 main 里面导入这个 model

初始化链接上数据库后,就可以
model.DB = db

然后其他包只需要引入 model , 再 model.DB 就可以愉快的使用了

gorm的问题,为了全局使用db,我定义了全局变量,如果分成多个文件,db对象如何获取?

gorm的问题,为了全局使用db,我定义了全局变量,如果分成多个文件,db对象如何获取?

以上是 gorm的问题,为了全局使用db,我定义了全局变量,如果分成多个文件,db对象如何获取? 的全部内容, 来源链接: utcz.com/a/105760.html

回到顶部