如何在redis golang中将键值对传递给MSet?

Suk*_*esh 2 interface go redis

redis-go 中的 MSetpairs ...interface{} 在这里接受

func (c *cmdable) MSet(pairs ...interface{}) *StatusCmd {
    args := make([]interface{}, 1, 1+len(pairs))
    args[0] = "mset"
    args = appendArgs(args, pairs)
    cmd := NewStatusCmd(args...)
    c.process(cmd)
    return cmd
}
Run Code Online (Sandbox Code Playgroud)

现在,我已keys []string映射到values []int64要在 Redis 缓存中设置。如何将它们转换为接口片段并将它们传递给它MSet以使其工作?

Cer*_*món 7

使用 for 循环将键和值复制到切片:

var pairs []interface{}
for i := range keys {
  pairs = append(pairs, keys[i], values[i])
}
cmd := c.MSet(pairs...)
Run Code Online (Sandbox Code Playgroud)