Добрый понедельник, утро всем! У меня проблема с предварительной загрузкой объектов! Я делаю несколько предварительных загрузок сущностей. Country
entity работает нормально, но Report
не предварительно загружается. Есть идеи, что может быть причиной этого?
type Review struct {
ID int
Report Report 'gorm:"ForeignKey:ReportId"'
ReportId uint
Country Country 'gorm:"ForeignKey:CountryId"'
CountryId uint
}
func FindApprovedReviews(page int, countryId int) ([]Review, int, error) {
var reviews [] Review
// Subtract one to fix Offset but keep page number correct
page -= 1
err := db.Where("approved_at IS NOT NULL").
//TODO: Change this to a configuration file value
Limit(10).
Where("approved_by IS NOT NULL").
Where("country_id = ?", countryId).
//TODO: Change this (the 10) to a configuration value
Offset(page * 10).
Order("id desc").
Preload("Report").
Preload("Country").
Find(&reviews).
Error
if err != nil {
return nil, 0, err
}
return reviews, count, err
}
Две связанные структуры (Country
и Report
) просто составлены из gorm.Model
для целей обсуждения.
Заранее спасибо за помощь!!
РЕДАКТИРОВАТЬ: я использую драйвер mysql
.
P.S. [...]
представляют бизнес-данные, которые были скрыты, но это простые столбцы, которые работают нормально.