标签:rem var 对象 pass art password null 操作 info
// User 用户表
type User struct {
ID int
UserName string
Password string
Articles []*Article `orm:"rel(m2m)"`
}
// Article 文章表
type Article struct {
ID int `orm:"pk;auto"`
Artiname string `orm:"size(60)"`
Atime time.Time `orm:"auto_now"`
Acount int `orm:"default(20);null"`
Acontent string
Aimg string
ArticleType *ArticleType `orm:"rel(fk)"`
Users []*User `orm:"reverse(many)"`
}
// 多对多插入,user
article := models.Article{ID: id}
// 1 获取多对多操对象
m2m := o.QueryM2M(&article, "Users")
// 2 获取插入对象
username := c.GetSession("username").(string)
beego.Info(username)
var user = models.User{UserName: username}
o.Read(&user, "UserName")
// 3 多对多插入
_, err = m2m.Add(&user)
if err != nil {
beego.Info("插入多对多失败")
}
// 多对多查询
article := models.Article{ID: id}
err = o.QueryTable("Article").RelatedSel("ArticleType").One(&article)
o.LoadRelated(&article,"Users")
删除方法和添加方法一样,将add改成Remove即可。
标签:rem var 对象 pass art password null 操作 info
原文地址:https://www.cnblogs.com/Mishell/p/12178724.html