1 回答

TA貢獻1862條經(jīng)驗 獲得超6個贊
有幾件事需要嘗試和修復(fù):
您可能不需要該屬性來加載切片,因為它們只能使用 加載。如果您有外鍵,可以按如下方式添加它:many2manyDonationDetailDonationID
type Donation struct {
ID uint64 `json:"id" gorm:"primarykey"`
UserID string `json:"user_id"`
PaypalOrderID string `json:"paypal_order_id"`
TotalAmount float64 `json:"total_amount"`
Currency string `json:"currency"`
DonationDetails []*DonationDetail `json:"donation_details" gorm:"foreignKey:DonationID"`
}
您不需要該方法,因為已經(jīng)是一個指針。但是,要加載數(shù)據(jù),您還需要預(yù)加載。&dFirstdProject
func List(donationID string) (*Donation, error) {
var d *Donation
if err := db.Debug().Preload("DonationDetails.Project").First(d, donationID).Error; err != nil {
return nil, fmt.Errorf("could not list donation details: %w", err)
}
return d, nil
}
- 1 回答
- 0 關(guān)注
- 90 瀏覽
添加回答
舉報