看了一上午文档还没写出来
post tag post_tag_relation 三个表,post 和 tag 是多对多关系
现在要从关系表中查找某个 tagId 对应的所有 postId,再查这些 postId 对应的 post 信息,就包括把每个 post 对应的所有 tag 也查出来,有什么方便的方法吗
因为查询条件不确定,所以目前是这样写的
tagId,ok:=para["tagId"]
if ok{
tagId=int(tagId.(float64))
var postIds []int64
var rels []models.PostTagRelation
err := db.Table("post_tag_relation").Where("tag_id=?", tagId).Where("del=?",0).Select("postId").Find(&rels).Error
if err != nil {
log.Println("query error: ", err)
c.JSON(200, failResp)
return
}
for _, rel := range rels {
postIds = append(postIds, rel.PostId)
}
db2=db2.Where("id in (?)",postIds)
}