如何解决如何从 Mongoose 的嵌套数组中查找数据?
我有两个 ID:publisherID 和 BookID。
我的猫鼬数据库看起来像:
现在的问题是:我想找到 userId,其中publisherId 为59l55llopd3W1FuosGgN,bookId 为G1Vfe2NwS3sy-qhT1J0g6
我创建了以下返回空数据的函数。
const allTheRelatedData = (publiserId,bookId) => {
return new Promise((resolve,reject) => {
try {
myBookSchema
.findOne({
publisherId: publisherId,"books.$.bookId": bookId,})
.then((data) => {
console.log(data);
resolve(data);
})
.catch((error) => {
console.log(error);
reject(error);
});
} catch (error) {
console.log(error);
reject(error);
}
});
};
当我运行这段代码时,它给出了空数据。请帮忙,我尝试了很多解决方案,例如位置、匹配等。没有任何效果。请帮忙。
解决方法
也许这会奏效
movd r32,xmm
,
您可以使用 $ projection operator 来做到这一点:
myBookSchema
.findOne({
publisherId: publisherId,"books.bookId": bookId,},{
"books.$": 1
}
).then((data) => {...
然后您可以使用 userId
获得 data.books[0].userId
并记住使用 if (data && data.books && data.books.length)...
检查数据或书籍是否存在
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。