🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
1、一对一 * User模型中: Profile \*Profile`orm:"rel(one)"`正向关系,有外键字段 * Profile模型中: User \*User`orm:"reverse(one)"`反向关系,只是关系,没有外键 ~~~ type User struct { Id int Name string Img *Userimg `orm:"reverse(one)"` //一对一 } type Userimg struct { Id int Name string User *User `orm:"rel(one)"` //一对一 } func init() { orm.RegisterModel(new(User), new(Userimg)) } ~~~ 2、一对多 * article模型中:User \*User`orm:"rel(fk)"`正向关系,有外键,外键在多的一方 * user模型中:Articles \[\]\*Articles `orm:"reverse(many)" 反向关系,没有外键 一对多,外键在多的一方 ~~~ type User struct { Id int Name string Ather []*Ather `orm:"reverse(many)"` //一对多 } type Ather struct { Id int Name string User *User `orm:"rel(fk)"` //一对多 } func init() {orm.RegisterModel(new(User), new(Ather)) } ~~~ 3、多对多 * post模型中:Tags \[\]\*Tag`orm:"rel(m2m)"`正向关系,没有外键 * tag模型中:Posts \[\]\*Post`orm:"reverse(many)"`反向关系,没有外键 ![](https://img.kancloud.cn/00/ec/00ec1854511a42470509179752197a8d_869x476.png)