**我有此mongoose模式,我想以字符串数组的形式查询所有IP属性。**例如[IP,IP,IP,IP] this,而不是[ { ip:IP地址}]
const proxyIpSchema = new Schema<IProxyIp>({
ip: {
type: String,
required: true,
//ignore duplicate ip
unique: true,
},
port: {
type: Number,
required: false,
default: null
},
reason: {
type: String,
required: true,
default: 'Unknown Detection.'
}
},
{
timestamps: true,
}
);
我不能使用map函数,因为它会消耗后端处理能力。像这样,我希望所有的ips都是一个字符串数组
//从mongo数据库获取所有ip并推送到redis
await ProxyIp.find({}, { ip: 1 }).then(async (docs) => {
docs.map(async (doc) => {
await this.RedisClient?.sAdd(redisTable, doc.ip);
});
}).catch((err) => {
});
1条答案
按热度按时间weylhg0b1#
这里有一种方法可以将所有
"ip"
放入一个数组中(在一个对象中)。输出示例:
在mongoplayground.net上试试。