Aller au contenu

Missing Eager Load (ARCH5051)

Ce contenu n’est pas encore disponible dans votre langue.

Key go.orm.missing-eager-load · Severity warning · Category orm

Looping over related data without declaring an eager-load API like Preload causes N+1 queries. Preload the relation up front.

var orders []Order
db.Find(&orders)
for _, o := range orders {
fmt.Println(o.Customer.Name) // Customer lazy-loaded
}
var orders []Order
db.Preload("Customer").Find(&orders)
for _, o := range orders {
fmt.Println(o.Customer.Name)
}

Eager-load the accessed relation with Preload on queries that read related data.