为了账号安全,请及时绑定邮箱和手机立即绑定

从 gorm 数据库返回结构列表的函数返回 nil?

从 gorm 数据库返回结构列表的函数返回 nil?

Go
慕桂英3389331 2022-09-19 17:21:47
我正在尝试创建一个函数,该函数将表中的所有内容输出为表所具有的结构切片。func FetchAll(parameter interface{}) []interface{} {    var model interface{}    var resultArray []interface{}    db := common.GetDB()    rows, err := db.Model(parameter).Where(parameter).Rows()    if err != nil {        fmt.Print(err.Error())        return nil    }    for rows.Next() {        db.ScanRows(rows, &model)        resultArray = append(resultArray, model)    }    fmt.Println(resultArray)    return resultArray}用法:c.JSON(200, FetchAll(&ProductImage{ProductID: productID}))但输出如下:[<nil>,<nil>,<nil>]这是为什么呢?
查看完整描述

1 回答

?
Cats萌萌

TA贡献1805条经验 获得超9个赞

不能的类型modelinterface{}


您可以使用var model = map[string]interface{}{}


更易于编写:


func FetchAll(parameter interface{}) []map[string]interface{} {

    var resultArray []map[string]interface{}


    db := common.GetDB()

    err := db.Model(parameter).Where(parameter).Find(&resultArray).Error

    if err != nil {

        fmt.Print(err)

        return nil

    }

    fmt.Println(resultArray)

    return resultArray

}


查看完整回答
反对 回复 2022-09-19
  • 1 回答
  • 0 关注
  • 109 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信