【发布时间】:2019-08-26 19:30:59
【问题描述】:
我正在尝试对多个字段进行基本过滤(搜索),并想问如何实现它:
Location.find({
$and: [
{ name: { $regex: query.name } },
{ city: query.city },
{ type: query.type }
]
});
我一开始就有这个,但当然,这会过滤所有字段,$or 是不够的。
我的数据如下所示:
{
"name": "Shop1",
"type": "shop",
"city": "City1"
},
{
"name": "Shop2",
"type": "shop",
"city": "City1"
},
{
"name": "Cafe1",
"type": "cafe",
"city": "City2"
}
目标将能够搜索输入名称、类型和城市。 (任何字段都可以为空)
例如:
-
Shop1 / Shop / City1 => Shop1 Shop / *blank* / City1 => Shop1, Shop2*blank* / Shop / City1 => Shop1, Shop2
等等。
提前谢谢你!
【问题讨论】:
标签: node.js mongodb search filtering