根据提供的代码,mirrors 是一个空切片,因此在使用之前需要先对其进行初始化。可以使用make函数来初始化切片,如下所示:

mirrors := make([]model.Mirror, 0)

另外,为了能够正确地获取切片数据,需要确保数据库表中的数据能够正确地映射到 model.Mirror 结构体中。可以通过定义对应的结构体字段和数据库表字段的映射关系来实现,例如使用 gorm:"column:columnName" 标签指定字段映射关系。

最后,可以使用 Find 方法来获取数据库中的数据并将其存储到切片中。在这个例子中,可以将代码修改为如下形式:

var mirrors []model.Mirror
tx := srv.db.Table("mirror").Where("1=1").Find(&mirrors)
if tx.Error != nil {
    logger.Error(tx.Error.Error())
    return nil, tx.Error
}

这样就能够正确地获取到数据库中的数据并存储到切片中了。

var mirrors modelMirror	tx = srvdbTablemirrorWhere1=1Find&mirrors	if tx != nil 		loggerErrortxErrorError		return nil txError	报错panicmirrors 空指针如何解决gorm如何获取切片数据

原文地址: http://www.cveoy.top/t/topic/h08C 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录