英文:
How to get a value which is a list from redis key-value store in golang?
问题
我正在使用golang编写一个函数,通过传递键来从Redis数据库中获取值。该值是一个列表。我正在使用"GET" Redis命令来获取该值。但是它给我返回了一个错误。
你可以在下面找到代码,
func GetValue(key string) []string {
var value []string
var err error
value, err = redis.Strings(conn.Do("GET", key))
if err != nil {
log.Fatal(err)
}
fmt.Println(value)
return value
}
func RetrieveValue() {
keyType, _ := conn.Do("TYPE", recentItemKey)
fmt.Println("Type", keyType)
var results []string
results = GetValue(recentItemKey)
for _, val := range results {
fmt.Println(val)
}
}
以下是输出结果,
Type list
2015/03/14 19:09:12 WRONGTYPE Operation against a key holding the wrong kind of value
exit status 1
版本
Go 1.4.2
Redis-2.8.19
Redis Go库
github.com/garyburd/redigo/redis
有人可以帮我解决这个问题吗?谢谢。
英文:
I am writing a function in golang to get the value from redis db by passing the key. The value is a list. I am using 'GET' redis command to get the value. But it is giving me error.
You can find below the code,
func GetValue(key string) []string {
var value []string
var err error
value, err = redis.Strings(conn.Do("GET", key))
if err != nil {
log.Fatal(err)
}
fmt.Println(value)
return value
}
func RetrieveValue() {
keyType, _ := conn.Do("TYPE", recentItemKey)
fmt.Println("Type", keyType)
var results []string
results = GetValue(recentItemKey)
for _, val := range results {
fmt.Println(val)
}
}
And the output is here,
Type list
2015/03/14 19:09:12 WRONGTYPE Operation against a key holding the wrong kind of value
exit status 1
Version
Go 1.4.2
Redis-2.8.19
Redis Go Library
github.com/garyburd/redigo/redis
Could anyone help me on this.? Thank you
答案1
得分: 9
使用LRANGE命令获取列表的元素:
func GetValues(key string) []string {
value, err := redis.Strings(conn.Do("LRANGE", key, 0, -1))
if err != nil {
log.Fatal(err)
}
return value
}
GET命令用于获取字符串键的值。GET命令不能用于列表键。
英文:
Use LRANGE to get the elements of a list:
func GetValues(key string) []string {
value, err := redis.Strings(conn.Do("LRANGE", key, 0, -1))
if err != nil {
log.Fatal(err)
}
return value
}
The GET command gets the value of a string key. The GET command does not work on list keys.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论