我有一個代碼: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批量字符串轉(zhuǎn)換為time.Time我該如何解決?ScanStruct的任何示例都詳細介紹了Struct的各種字段類型以供參考?
2 回答

小怪獸愛吃肉
TA貢獻1852條經(jīng)驗 獲得超1個贊
的文檔ScanStruct
非常清楚:
支持整數(shù),浮點數(shù),布爾值,字符串和[] byte字段。
不支持其他字段類型time.Time
。
為了解決這個問題,我將制作自己的ScanStruct版本,該版本可以處理Redis和我需要拋出的任何類型之間的轉(zhuǎn)換。

拉丁的傳說
TA貢獻1789條經(jīng)驗 獲得超8個贊
您可以簡單地添加一個ignore標(biāo)簽來使時間字段避免被封送。
type UD struct {
created_at string
B time.Time `redis:"-"`
ended_at string
data string
status string
}
- 2 回答
- 0 關(guān)注
- 394 瀏覽
添加回答
舉報
0/150
提交
取消