none
// User table 用户表,与用户组表多对多关系 type User struct { Id int UserName string `orm:"unique"` Department string Email string Groups []*Group `orm:"rel(m2m)"` //多对多 } // Group table 用户组表,与用户表多对多关系 type Group struct { Id int GroupName string `orm:"unique"` Introduce string Users []*User `orm:"reverse(many)"` //反向多对多 }
o := orm.NewOrm() u1 := User{UserName: "zhangszan"} u2 := User{UserName: "lisi"} g1 := Group{GroupName: "g1"} g2 := Group{GroupName: "g2"} o.InsertMulti(2, []User{u1, u2}) o.InsertMulti(2, []Group{g1, g2}) m2mu1 := o.QueryM2M(&u1, "Groups") m2mu2 := o.QueryM2M(&u2, "Groups") m2mu1.Add(&g1) m2mu1.Add(&g2) m2mu2.Add(&g2)
删除方法和添加方法相似,将add改成Remove即可。另外还是clear等等。
o := orm.NewOrm() u := new(User) u.Id = 1 o.LoadRelated(r, "Groups")
如果这篇文章对你有所帮助,可以通过下边的“打赏”功能进行小额的打赏。
本网站部分内容来源于互联网,如有侵犯版权请来信告知,我们将立即处理。