首页 文章

Go Gorm没有显示数据有很多

提问于
浏览
0

我正在使用http://gorm.io/docs/has_many.html在另一个团队拥有的一个表中创建多个条目 .

Team struct {
    ID             int64         `gorm:"primary_key" json:"Id"`
    PayingMemberID sql.NullInt64 `json:"PayingMemberId,int64"`
    PayingMember   *User
    Name           string `json:"Name"`

    Teamcoins          []Teamcoin `gorm:"foreignkey:TeamID"`
}

Teamcoin struct {
    ID     int64 `gorm:"primary_key" json:"Id"`
    Team   Team
    TeamID int64

    PeriodYear  int
    PeriodMonth int

    Coin int `json:"-"`
}

然后,我在Team表中创建一个条目,如下所示:

teamcoin := Teamcoin{
    PeriodYear:        2018,
    PeriodMonth:       2,
    Coin:              12,
}

team := Team{
    Name : "Some Name",
    Microcoins: []Teamcoin{teamcoin},
}

正如预期的那样,结果会创建一个带ID的团队条目 . 当我运行下一段代码来获取所有团队的信息时:

var t []Team
err := r.db.Preload("PayingMember").Find(&t).Error

我显示t,我得到:{530071983 {0 false}某些名称 0 0 0 [] 0 0 0 false}

现在,我可能在这篇文章中省略了关于团队结构的一些信息,但无论如何,即使在表中创建相关信息,我也永远不会显示有关TeamCoin的信息 .

[]总是空的,我期待TeamCoin的信息 .

1 回答

  • 1

    你可能应该链接你的预加载,做你需要写的所有关联

    r.db.Preload("PayingMember").Preload("Teamcoins").Find(&t).Error

相关问题