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"]
这是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"]