Javascript Nodejs中的建议功能由谁负责?
因此,我的模型用户有两个字段,看起来与此完全相同:Javascript Nodejs中的建议功能由谁负责?,javascript,node.js,reactjs,mongodb,mongoose,Javascript,Node.js,Reactjs,Mongodb,Mongoose,因此,我的模型用户有两个字段,看起来与此完全相同: following: [ { friendship: { type: mongoose.Schema.Types.ObjectId, ref: 'Friendship' }, user: { type: mongoose.Schema.Types.ObjectId, ref: 'User' } } ], followers: [ { friend
following: [
{
friendship: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Friendship'
},
user: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}
}
],
followers: [
{
friendship: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Friendship'
},
user: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}
}
]
我的功能应该是“建议”loggedIn帐户用户遵循。这就是功能:
exports.whoToFollow = asyncHandler(async (req, res, next) => {
const people = await User.find()
.merge({
_id: { $nin: req.user._id },
followers: { $nin: { user: req.user._id } }
})
.select(`username avatar name`)
.limit(6);
res.status(200).json({ success: true, data: people });
});
合并中的第一行是避免显示loggedIn帐户,后面的那行是我遇到麻烦的地方。
它应该给我的用户我还没有遵循,但它总是显示我已经遵循的用户也,有点混乱lol
有人知道怎么解决这个问题吗?我终于解决了!!:
exports.whoToFollow = asyncHandler(async (req, res, next) => {
const people = await User.find()
.merge({
_id: { $nin: req.user._id },
'followers.user': { $nin: req.user._id }
})
.select(`username avatar name`)
.limit(6);
res.status(200).json({ success: true, data: people });
});
我只需要使用点符号lol