beego 中使用关联查询( join 查询)文档所在网址:这里//使用实例:article:=new(Article)
num,err:= o.QueryTable("go_article").RelatedSel().All(&article)但直接使用 RelatedSel() 是不行,还必须先在 model中定义:type User struct { Id int Name string Age int
}type Article stuct { Id int Title string Content string User *User `orm:"rel(fk)"` //这样写,默认在Article中应该有一个user_id的字段,如果没有,通过beego自动建表的话,它会生成;如果是手动建表,记得把user_id 这个字段加上去
}
定义表字段为"rel(fk)",即外键,要定义其它类型的,请看文档。命令行自动建表:orm.RunCommand() //main函数或init函数中需要加这行代码,否则不能自动建表go build main.go #先在命令行中执行这句,会生成main.exe文件./main orm syncdb -h #-h会提示可用的参数./main orm syncdb -v #建表的同时会显示建表的sql语句
如果使用自动建表,建议不要像上边一样直接写int,string,具体字段字段的方法,见 文档
其实我使用命令行建表最主要的目的是想知道 Article 中的 User 会生成什么字段名,结果就是 user_id,且与你 User 对