首页 > 解决方案 > 尝试实现 Redigo ScanStruct 但示例有限

问题描述

我有一个代码:

values, err := redis.Values(c.Do("hgetall", value))
if err != nil {
    fmt.Println("HGETALL", err)
}

/*
type UD struct {
    created_at  string
    B           time.Time
    ended_at    string
    data        string
    status      string
}
*/
if err := redis.ScanStruct(values, &UD); err != nil {
    fmt.Println(err)
}

我得到的错误是

redigo.ScanStruct:无法分配字段 B:无法从 Redis 批量字符串转换为 time.Time

我该如何解决这个问题?ScanStruct 的各种字段类型的详细示例供 Struct 参考吗?

标签: goredis

解决方案


您可以简单地添加一个忽略标签来使时间字段避免被封送。

type UD struct {
    created_at  string
    B           time.Time `redis:"-"`
    ended_at    string
    data        string
    status      string
}

推荐阅读