Py学习  »  Redis

Golang Redis:地图和切片

Shashank Sachan • 4 年前 • 327 次点击  

我使用golang从redis散列获取数据,然后映射到结构中。

type Person struct {
    ID         string       `json:"id"`
    FirstName  string       `json:"firstName"`
    LastName   string       `json:"lastName"`
    Filters    interface{}  `json:"filters"`
    Type       string       `json:"type"`
}

在Redis中,哈希字段包含一个字符串化的JSON。

hget hashname字段名

上面返回一个字符串化的JSON。

现在“filters”键可以是基于类型的数组或映射(这就是为什么我将filters类型定义为struct中的接口)。
我将JSON整理如下:

var p Person
content, err := redis.HGet("hashName", "id").Result()
_ = json.Unmarshal([]byte(content), &p)

现在我必须循环使用下面这样的过滤器,但这会产生错误 不能超过p.筛选器(类型interface) (我知道为什么会出现这种错误)

for _, filter := range p.Filters {
  fmt.Println(filter)
}

我们有办法处理这种情况吗?

谢谢,
沙参

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/37895
 
327 次点击  
文章 [ 1 ]  |  最新文章 4 年前