GoFrame ORM
组件针对于struct
内嵌结构提供了良好的支持,包括参数传递、结果处理。例如:
type Base struct { Uid int `orm:"uid"` CreateAt *gtime.Time `orm:"create_at"` UpdateAt *gtime.Time `orm:"update_at"` DeleteAt *gtime.Time `orm:"delete_at"` } type User struct { Base Passport string `orm:"passport"` Password string `orm:"password"` Nickname string `orm:"nickname"` }
并且,无论多少层级的struct
嵌套,ORM
的参数传递和结果处理都支持。
3 Comments
问冰
强哥这里有一个bug,如果内嵌的结构体里面有和原结构体名字一样的成员名,那么连表查出来的赋值有可能会混乱。如:
最后数据库连city表和country表查询时,即使做好了映射,他也可能会出现将country的name赋值到city的name中这类的问题。
糖水不加糖
是字段覆盖问题,你可以打印下g.Dump(City{})跟g.Dump(gjson.MustEncodeString(City{}))看看输出就知道了.
cory
goframe 如何实现sql查询出数据然后以 一对多 的形式存放到结构体中?