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

Go Redis 将 HGetAll 结果转换为结构

Go Redis 将 HGetAll 结果转换为结构

Go
扬帆大鱼 2022-06-21 15:52:45
我正在从中获取数据,redis.HGetAll但没有找到将结果转换为我的 Struct 的干净方法。var object struct {    x int}result := redisClient.HGetAll(context.Background(), "the_h_key")//TODO import the result content into the object 这个壮观的案例有什么功能吗?我正在使用JSON包(编组,然后 UnMarshal 到结构)。
查看完整描述

2 回答

?
子衿沉夜

TA贡献1828条经验 获得超3个赞

Redis 的结果是一个 map[string]string。对于结构中的每个字段,从映射中获取值,将字符串转换为字段类型并分配给字段。


 var o object

 var err error


 o.x, err = strconv.Atoi(m["x"])

 if err != nil {

      // handle the error

 }


 ... repeat for other fields as needed


查看完整回答
反对 回复 2022-06-21
?
慕标琳琳

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

如果您的数据结构不是太复杂,使用 redis 保存数据的一种方便方法是 jsons。只是json.Marhsal()您的结构并将其保存为字符串,然后json.Unmarshal()将该字符串保存到您的结构中。



查看完整回答
反对 回复 2022-06-21
  • 2 回答
  • 0 关注
  • 722 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号