【发布时间】:2019-03-28 23:24:56
【问题描述】:
我是新的 Node.js。我的问题是我想从一个集合 User 中获取数据,并且我已经在另一个集合中收集了数据 Friend
User.find({_id: {'$ne':user_id }}).then(data1 => {
Friend.find({user_id: user_id }).then(data2 => {
console.log(data1)
console.log(data2)
});
});
现在我想在集合Friend 的user_id 属性与User 集合_id 不匹配时进行过滤
从MongoDB获取数据后如何操作?
【问题讨论】:
-
所以
data2.filter(friend => data1.every(({user_id}) => user_id !== friend.user_id))是你的意思吗? -
您能解释一下这段代码吗?
-
它过滤
data2,仅包括那些user_id不是data1中的user_id的人......假设data2和data1是数组......你使用这个词“集合”,所以我猜它们是数组,因为您使用了filter这个词...您能举一个 data1 和 data2 的示例吗?然后我也许可以写一个答案,并附上解释 -
Data1 是从数据库中收集的,它的响应来自数据库
-
哪个底层数据库?看起来像 Mongo,但只是检查。根据数据库的不同,这可能在一次往返的数据库中而不是在应用程序代码中是可行的。
标签: javascript node.js