GoCQL : Marshal string into timestamp

笑着哭i 提交于 2019-12-06 12:08:01

Here is how I end up solving this by transforming string literal (of timestamp) to type time.Time

timestamp = "2017-10-09T13:25:00.000Z"
tsAfter,err = time.Parse(model.TimeLayout, timestamp)
if err != nil {
    errs = append(errs, err.Error())
}

log.Printf("GET param [id = %s]", idStr)
log.Printf("GET param [after = %s]", tsAfter.String())

m := map[string]interface{}{}
query := "SELECT id, time, type, val FROM events WHERE id = ? AND time >= ?"
iterable := cql.Session.Query(query, idStr, tsAfter).Consistency(gocql.One).Iter()

for iterable.MapScan(m) {
    eventList = append(eventList, model.Event{
        ID:         m["id"].(string),
        Time:       m["time"].(time.Time),
        Type:       m["type"].(string),
        Val:        m["val"].(float64),
    })
    m = map[string]interface{}{}
}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!