在填充猫鼬后查找

在填充猫鼬后查找,第1张

填充猫鼬后查找

@Jason Cust 已经很好地解释了它-
在这种情况下,通常最好的解决方案是更改架构,以防止

Users
通过存储在单独集合中的文档的属性进行查询。

不过,这是我能想到的最佳解决方案,不会强迫您这样做(因为您在评论中说不能)。

Users.find().populate({  path: 'email',  match: {    type: 'Gmail'  }}).exec(function(err, users) {  users = users.filter(function(user) {    return user.email; // return only users with email matching 'type: "Gmail"' query  });});

我们在这里所做的只是填充

email
s匹配其他查询(调用中的
match
选项
.populate()
),否则文档中的
email
字段
Users
将设置为
null

剩下的全部都

.filter
放在返回的
users
数组上,就像在您最初的问题中一样-仅使用更简单,非常通用的检查。如您所见-
email
存在或不存在。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5172403.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存