使用Go语言和go-redis/redis v8库存储复杂数据结构(例如数组)时,需要注意Redis只支持字符串类型值。本文将讲解如何利用JSON编码解决go-redis/redis v8存储数组结构的问题。
问题:直接将Go数组[]model.sysrolemenu使用global.gva_redis.set方法存储到Redis会报错,因为该方法仅支持字符串类型。
示例代码(错误):
func getmenutree(roleid string) (err error, menus []model.sysrolemenu) { // ... 获取菜单树数据 ... if err := global.gva_redis.set(context.background(), roleid, menus, 0).err(); err != nil { global.gva_log.error("保存redis失败!", zap.error(err)) } return err, menus}
登录后复制
本文来自互联网或AI生成,不代表软件指南立场。本站不负任何法律责任。