美文网首页Go
gorm v2.0版本 指定表前缀或表单数

gorm v2.0版本 指定表前缀或表单数

作者: Super淳语 | 来源:发表于2021-09-08 18:39 被阅读0次
    
    import (
        "github.com/mix-go/dotenv"
        "github.com/mix-go/xdi"
        "gorm.io/driver/mysql"
        "gorm.io/gorm"
    )
    
    func init() {
        obj := xdi.Object{
            Name: "gorm",
                  //不指定表前缀,不指定表单数
            New: func() (i interface{}, e error) {
                return gorm.Open(mysql.Open(dotenv.Getenv("DATABASE_DSN").String()))
            },
        }
        
            // 指定表单数 指定表前缀
        //return gorm.Open(mysql.Open(dotenv.Getenv("DATABASE_DSN").String()),
                //  &gorm.Config{
                //  NamingStrategy: schema.NamingStrategy{
                //      TablePrefix: "gormv2_",
                //      SingularTable: true,
                //  },
                //})
    
    
    
        if err := xdi.Provide(&obj); err != nil {
            panic(err)
        }
    }
    
    func Gorm() (db *gorm.DB) {
        if err := xdi.Populate("gorm", &db); err != nil {
            panic(err)
        }
        return
    }
    
    直接具体指定表名称
    当然对于Model对应的数据库表名称还有一种共同的定义方式,如下
    
    func (User) TableName() string {
        return "user"
    }
    
    
    

    相关文章

      网友评论

        本文标题:gorm v2.0版本 指定表前缀或表单数

        本文链接:https://www.haomeiwen.com/subject/ixavwltx.html