gpt4 book ai didi

javascript - 评估 javascript 对象是否匹配 mongo 查询?

转载 作者:行者123 更新时间:2023-11-30 12:28:57 28 4
gpt4 key购买 nike

我们有一个应用程序,我们在 Mongo 数据库中存储两种类型的文档:

  • contacts,基本上代表人
  • 过滤器,本质上是存储的 MongoDB 查询,表示用户的“已保存搜索”。

这是数据模型的简化版本:

contacts: [
{ id: 1, name: 'Phil', age: 40 },
{ id: 2, name: 'Bob', age: 34 }
]

filters: [
{ query: { name: 'Phil' } }
{ query: { age: { &gt: 30 } } }
]

给定一个过滤器,列出与该过滤器匹配的所有联系人相对容易:

db.contacts.find(filter.query);

更难的是找到与特定联系人匹配的所有过滤器。现在我们有如下内容:

matchedFilters = []

_.each(filters, function(filter) {
if (db.contacts.find(_.extend(filter.query, {id: contact_id}).length > 0) {
matchedFilters.push(filter.id)
}
});

本质上,我们需要分别向 mongo 询问每个过滤器。这导致对 Mongo 的大量查询。

在我们评估此查询时,我们拥有有关我们试图查找的联系人的所有相关信息。有什么方法可以将 Mongo 查询语法应用于内存中的 Javascript 对象而无需询问 Mongo?

或者,有没有办法让 Mongo 在一次往返中进行大量查询?

最佳答案

看看sift.js .我想,这正是您要找的。

here is a blog post about it .

关于javascript - 评估 javascript 对象是否匹配 mongo 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28328768/

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