代码之家  ›  专栏  ›  技术社区  ›  John Doe

尝试实现Redigo scanstuct,但要遵循的示例有限

  •  0
  • John Doe  · 技术社区  · 7 年前

    我有个密码:

    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.scanstuct:无法分配字段B:无法从Redis转换 批量字符串到时间。时间

    我该如何解决?ScanStruct的任何例子都可以作为各种字段类型的参考吗?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Itamar Haber    7 年前

    文件 ScanStruct 很清楚:

    支持整数、浮点、布尔、字符串和[]字节字段。

    不支持其他字段类型 time.Time 包括。

    为了解决这个问题,我要去做我自己的ScanStruct版本,它可以处理Redis'和我需要的任何类型之间的转换。