根据有关Atlas Search的文档,它指出:
$search 必须是它出现的任何管道的第一阶段。
那么如果是这样的话,你如何应用 Mongo 过滤器。将这些过滤器应用于搜索的输出似乎非常违反直觉?
我们正在考虑使用 Mongodb 全文搜索作为 Algolia 的替代方案,但是这个限制似乎很奇怪
当前管道:
const pipeline = [
{
$search: {
text: {
query,
path: fields,
fuzzy: {
maxEdits: 1,
maxExpansions: 50,
},
},
},
},
{
$match: {
someField: 1,
},
},
];