为了账号安全,请及时绑定邮箱和手机立即绑定

GORM 从两个表中获取一对一关系的数据

GORM 从两个表中获取一对一关系的数据

Go
胡子哥哥 2022-09-26 14:41:29
我的Go应用程序上有这两个结构type Customer struct {    ID             uint       `json: "id" gorm:"primary_key"`    Name           string     `json: "name"`    AddressId      int        `json: "addressId"`    Address        Address    `json: "address"`}type Address struct {    ID        uint   `json: "id" gorm:"primary_key"`    ZipCode   string `json: "zipCode"`    StreetOne string `json: "streetOne"`    StreetTwo string `json: "streetTwo"`    City      string `json: "city"`    State     string `json: "state"`    Number    string `json: "number"`}我在我的前端使用Angular,所以如果我不必提出两个请求来获得客户,那么这将是非常实用的。我在这里搜索,但找不到一对一关系的示例,有没有办法使此查询不仅获得客户数据,还获得地址?func (u customer) GetCustomers(params string) ([]models.Customer, error) {    customers := []models.Customer{}    u.db.Preload("Addresses").Find(&customers)    return customers, nil}
查看完整描述

1 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

使用该函数时,可以向其传递要为其加载数据的字段的名称。Preload

在你的例子中,它应该看起来像这样(因为你在结构中的字段被命名为):CustomerAddress

u.db.Preload("Address").Find(&customers)

您可以查看文档以获取更多详细信息。


查看完整回答
反对 回复 2022-09-26
  • 1 回答
  • 0 关注
  • 82 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信