github.com/gogf/gf@v1.16.9/.example/database/gdb/mysql/gdb_with_slect.go (about) 1 package main 2 3 import ( 4 "github.com/gogf/gf/frame/g" 5 "github.com/gogf/gf/util/gmeta" 6 ) 7 8 func main() { 9 type UserDetail struct { 10 gmeta.Meta `orm:"table:user_detail"` 11 Uid int `json:"uid"` 12 Address string `json:"address"` 13 } 14 15 type UserScore struct { 16 gmeta.Meta `orm:"table:user_score"` 17 Id int `json:"id"` 18 Uid int `json:"uid"` 19 Score int `json:"score"` 20 } 21 22 type User struct { 23 gmeta.Meta `orm:"table:user"` 24 Id int `json:"id"` 25 Name string `json:"name"` 26 UserDetail *UserDetail `orm:"with:uid=id"` 27 UserScores []*UserScore `orm:"with:uid=id"` 28 } 29 30 db := g.DB() 31 var user *User 32 err := db.Model(user).WithAll().Where("id", 3).Scan(&user) 33 if err != nil { 34 panic(err) 35 } 36 g.Dump(user) 37 }