为gorm中的表设置单数名称的步骤

为gorm中的表设置单数名称的步骤,go,go-gorm,Go,Go Gorm,我想使用此模型创建一个表“user”。但是表名会自动设置为“users”。我知道这是戈姆的默认行为。但我希望表名为“user” 为您的结构设置方法TableName type user struct { ID int Username string `gorm:"size:255"` Name string `gorm:"size:255"` } 链接:Gorm有一个内置的方法,该方法将在全局级别设置,因此所有表都是单数的 对于gorm v1,您可以

我想使用此模型创建一个表“user”。但是表名会自动设置为“users”。我知道这是戈姆的默认行为。但我希望表名为“user”

为您的结构设置方法
TableName

type user struct {
    ID       int
    Username string `gorm:"size:255"`
    Name     string `gorm:"size:255"`
}

链接:

Gorm有一个内置的方法,该方法将在全局级别设置,因此所有表都是单数的

对于gorm v1,您可以执行以下操作:

func (user) TableName() string {
    return "user"
}
对于v2,它更详细一些:

db.SingularTable(true)

为了完整性:您可以使用
db.SingularTable(true)
全局使用单数表名。刚刚意识到OP使用的是
user
而不是
user
db, err := gorm.Open(postgres.Open(connStr), &gorm.Config{
    NamingStrategy: schema.NamingStrategy{
        SingularTable: true,
    },
})