gpt4 book ai didi

node.js - 如何检查 mongoose 对象引用是否包含匹配的字段?

转载 作者:太空宇宙 更新时间:2023-11-04 02:26:02 25 4
gpt4 key购买 nike

我不确定这样做是否正确或有效...我需要查看是否在其他用户关注者/关注者中找到了用户...

这是代码:

var User = new Schema({

firstName: {type: String},
lastName: {type: String},
following: [{ type: ObjectId, ref: 'User' }]

......});



var userId2 = someoneElse;


var userId = req.query.userId;
User.findOne(userId, function(err, results) {
if(err) {
throw err;

} else {
var i, newArrayF1, newArrayF2, biggerArraySize;
newArrayF1 = results.completedChallenges;
newArrayF2 = results.joinedChallenges;

if(newArrayF2.length > newArrayF1.length) {
biggerArraySize = newArrayF2.length;
} else {
biggerArraySize = newArrayF1.length;
}
for(i =0, i < biggerArraySize, i++) {
if(newArrayF1[i].followers.indexOf(userId2)) {
var obj = {mtype: 2};
res.json(obj);
}

if(newArrayF2[i].following.indexOf(userId2)) {
var obj = {mtype: 1};
res.json(obj);
}

}

if(i == biggerArraySize) {
var obj = {mtype: 0};
res.json(obj);
}

}

});

我正在运行检查以查看用户是否与其他用户有关注/关注者连接,并返回与其关联的整数,

最佳答案

那么,您可以在获取用户时使用populate

User.findOne(userId).populate('following').exec(function (err, user) {
user.following.forEach(function (person) {
// here you have access to each person in the array
}
}

关于node.js - 如何检查 mongoose 对象引用是否包含匹配的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30401204/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com