我正在尝试开发一个 api,以允许用户指定任意数据结构,并根据他们定义的结构轻松设置在自动生成的 postgres 数据库上执行 CRUD 操作的端点。
目前,我一直在使用 gorm,并且能够根据一组用户定义的结构自动生成一个数据库,该数据库支持所有类型的关系(有一个、一对多等)。当通过端点发送 JSON 时,我还能够插入到生成的数据库中。
我发现的问题是当我尝试接收数据时。似乎许多 go ORM 的不足之处在于将所有表中的数据映射回父结构的嵌套结构。
例如,如果用户定义:
type Member struct {
ID string
FirstName string
Hometown Hometown `gorm:"ForeignKey:MemberRefer"`
}
type Hometown struct {
ID string
City string
Province string
MemberRefer string
}
数据库创建表:
成员
ID
名
家乡
ID
城市
省
member_refer
但是,在检索数据时,映射回来的只是:
{
"id": "dc2bb591-506f-40a5-a141-bdc0c8410ba1",
"name": "Kevin Krishna",
"hometown": {
"id": "",
"city": "",
"province": ""
}
}
有谁知道支持这种行为的 go orm?
慕莱坞森
相关分类