我正在使用 node_redis,我想保存如下结构:
{
users :
"alex" : { "email" : "alex@gmail.com",
"password" : "alex123"},
"sandra" : { "email" : "sandra@gmail.com",
"password" : "sandra123"},
...
}
目前,我为每个用户创建一个 JSON 对象:
jsonObj = { "email" : "alex@gmail.com",
"password" : "alex123"}
然后做一个
db.hmset("alex", JSON.stringify(jsonObj))
是否可以将此结构嵌入到另一个结构中(用户结构?) 我怎样才能用这种结构设置 users["alex"] ?
最佳答案
据我所知,Redis 中不支持嵌套结构,但可以使用 set+hash 对它们进行建模(类似于 hierarchical trees )。 Hashes可能最适合存储单个 JSON 对象的字段和值。我要做的是为每个用户存储一个前缀(即 Redis convention),例如:
db.hmset("user:alex", JSON.stringify(jsonObj));
然后使用 sets使用名为 users
的键将用户分组为一组。然后我可以通过 smembers 获取所有用户 key 使用 hgetall 命令并单独访问它们中的每一个.
关于node.js - 通过 node.js 应用程序在 redis 中保存嵌套哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5701491/