Beego raw sql - 类型转换问题

Beego raw sql - Type conversion issue

这是Beego MVC架构内部使用的代码。

var maps []orm.Params
//Pallets Completed already.
o.Raw("Select SUM(Things) as AllTheThings FROM SomeTable").Values(&maps)

numThings := strconv.Atoi(maps[0]["AllTheThings"].(string))

c.Data["Stuff"] = maps[0]["AllTheThings"]

错误: 单值上下文

中的多值 strconv.Atoi()

试图找出如何使用我们的 ORM 获取数据并对其进行类型转换,以便对其进行算术运算。

更多详情请告诉我。

strconv.Atoi 的签名为:

func Atoi(s string) (int, error)

你应该在使用结果之前检查错误,像这样:

var maps []orm.Params
//Pallets Completed already.
o.Raw("Select SUM(Things) as AllTheThings FROM SomeTable").Values(&maps)

numThings, err := strconv.Atoi(maps[0]["AllTheThings"].(string))
if err != nil {
    // couldn't convert
}

c.Data["Stuff"] = maps[0]["AllTheThings"]