提问人:eliezra236 提问时间:11/16/2023 更新时间:11/16/2023 访问量:18
如何查询redis hmget并获取或转换结果以将其作为对象(Node.js)
How to query redis hmget and get or convert the result to get it as object (Node.js)
问:
请考虑以下几点。
const user = {
name: 'foo',
email: '[email protected]',
level: 15,
};
await ioredis.hmset('user:1', user);
const [name, email, level] = await ioredis.hmget('user:1', ['name', 'email', 'level']);
const reconstructUser = {
name,
email,
level,
};
有没有办法简化这里的过程?
因为现在它“只有 3”,但它也可能是 10 个值,我需要在每个查询中重新映射,正如你所看到的,我还需要一遍又一遍地输入它们的名称,每个部分都有拼写错误的风险。hmget
如果它不是 String(例如本例中的 level),则奖励将是一种重新转换它的方法,或者如果它为 null,则给出默认值。
答:
0赞
Khải Hồ Quang
11/16/2023
#1
可用于存储用户对象的键,然后遍历结果数组。Object.keys
hmget
const user = {
name: 'foo',
email: '[email protected]',
level: 15,
};
await ioredis.hmset('user:1', user);
const keys = Object.keys (user);
const userValue = await ioredis.hmget('user:1', keys);
let reconstructUser = {};
for (let i = 0; i < userValue.length; i++) {
reconstructUser[keys[i]] = userValue[i];
}
下一个:在芹菜工人上加载和卸载模型
评论