使用 Go-Gorp 创建 table 无法设置列详细信息

Create table using Go-Gorp fails to set column details

正在尝试使用 Gorp-Go ORM 包创建 table。能够在 MySql 中成功创建 table,但未能附加列详细信息。

type Data struct {
    id int `db:"pid"`
    name string `db:",size:50"`
}

Gorp 挂钩

Dbm.AddTableWithName(Data{}, "data_test").SetKeys(true, "id")
Dbm.CreateTablesIfNotExists()

Dbm 是指向 gorp.DbMap 的指针。结果 table 有 pid,size:50 有名字。尝试过

   type Data struct {
        id int `db:"pid"`
        name string `db:"name:xyz,size:50"`
    }

结果列名仍然是 "name:xyz,size:50"

我相信列名不需要 "name"

尝试db:"xyz,size:50"

根据this comment,尺寸功能仅在开发分支中可用。 您可以通过显式设置 maxsize 来实现此目的。示例:

dt := Dbm.AddTableWithName(Data{}, "data_test").SetKeys(true, "id")
dt.ColMap("xyz").SetMaxSize(50)
Dbm.CreateTablesIfNotExists()
....