如何使用结构显示所有记录
How to display all records using struct
我正在尝试从 table 中获取所有数据。它 returns 所有数据,但只显示最后一条记录。我在 Golang 中使用 GORM 和 GIN。
我尝试创建一个结构并将该结构传递给 Find
方法。
type MpCountry struct{
id uint
Iso string
Name string
Nicename string
Iso3 string
Numcode uint
phonecode uint
}
代码:
countries:= DbModel.MpCountry{}
DbModel.DB.Debug().Find(&countries)
fmt.Println(countries)
fmt.Println("test")
log.Printf("%+v", countries)
return &countries
输出
SELECT * FROM `mp_countries`
[239 rows affected or returned ]
{id:0 Iso:ZW Name:ZIMBABWE Nicename:Zimbabwe Iso3:ZWE Numcode:716 phonecode:0}
您只传递了一个结构,而不是结构的一部分。因此,它会替换结构中的值,直到到达最后一条记录。
相反,传递一个指向切片的指针:
countries := &[]DbModel.MpCountry{}
DbModel.DB.Debug().Find(countries)
我正在尝试从 table 中获取所有数据。它 returns 所有数据,但只显示最后一条记录。我在 Golang 中使用 GORM 和 GIN。
我尝试创建一个结构并将该结构传递给 Find
方法。
type MpCountry struct{
id uint
Iso string
Name string
Nicename string
Iso3 string
Numcode uint
phonecode uint
}
代码:
countries:= DbModel.MpCountry{}
DbModel.DB.Debug().Find(&countries)
fmt.Println(countries)
fmt.Println("test")
log.Printf("%+v", countries)
return &countries
输出
SELECT * FROM `mp_countries`
[239 rows affected or returned ]
{id:0 Iso:ZW Name:ZIMBABWE Nicename:Zimbabwe Iso3:ZWE Numcode:716 phonecode:0}
您只传递了一个结构,而不是结构的一部分。因此,它会替换结构中的值,直到到达最后一条记录。
相反,传递一个指向切片的指针:
countries := &[]DbModel.MpCountry{}
DbModel.DB.Debug().Find(countries)