为了账号安全,请及时绑定邮箱和手机立即绑定

去 redis HMSet 失败

去 redis HMSet 失败

Go
Helenr 2022-10-10 18:57:39
当我在 Go 中使用 redis hmset 时出现以下问题,这是为什么呢? ERR wrong number of arguments for 'hset' command 导致值没有存储在 redis 中?我指的是redis书,为什么这是一个问题?func (r *ArticleRepo) PostArticle(user, title, link string) string {    articleId := strconv.Itoa(int(r.Conn.Incr("article:").Val()))    voted := "voted:" + articleId    r.Conn.SAdd(voted, user)    r.Conn.Expire(voted, common.OneWeekInSeconds*time.Second)    now := time.Now().Unix()    article := "article:" + articleId    _, err := r.Conn.HMSet(article, map[string]interface{}{        "title":  title,        "link":   link,        "poster": user,        "time":   now,        "votes":  1,    }).Result()    if err != nil {        fmt.Println(err)    }    r.Conn.ZAdd("score:", &redis.Z{Score: float64(now + common.VoteScore), Member: article})    r.Conn.ZAdd("time:", &redis.Z{Score: float64(now), Member: article})    return articleId}
查看完整描述

1 回答

?
UYOU

TA贡献1878条经验 获得超4个赞

你可以在 Go 中使用 hset 代替 hmset :


 _, err := r.Conn.Do("hset", article, map[string]interface{}{

    "title":  title,

    "link":   link,

    "poster": user,

    "time":   now,

    "votes":  1,

}).Result()


查看完整回答
反对 回复 2022-10-10
  • 1 回答
  • 0 关注
  • 358 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号