beego orm一对多 关联查询

models

type User struct {
	Id        int64   `json:"id" `
	Name      string  `json:"name,omitempty" orm:"size(50)"`
	Passwords string  `json:"passwords" orm:"size(32)"`
	Baby      []*Baby `json:"baby" orm:"reverse(many)"`
}
type Baby struct {
	Id int64
	Name string `json:"name" orm:"size(50)"`
	User *User `json:"user" orm:"rel(fk);index"`
}

数据库中数据

user表

beego orm一对多 关联查询_第1张图片

Baby表

beego orm一对多 关联查询_第2张图片

数据库操作

	o:= orm.NewOrm()
	o.QueryTable("tb_user").Filter("id" ,user.Id).One(user)
	o.LoadRelated(user,"Baby")

返回结果

{
    "id": 2,
    "name": "test",
    "passwords": "123456",
    "baby": [
        {
            "Id": 1,
            "name": "慕青",
            "user": {
                "id": 2,
                "passwords": ""
            }
        },
        {
            "Id": 2,
            "name": "木木",
            "user": {
                "id": 2,
                "passwords": ""
            }
        }
    ]
}

你可能感兴趣的:(日常坑)