【发布时间】:2022-10-15 18:07:54
【问题描述】:
我试图在使用 .find() 方法搜索时找到 3 个不同的字段值,它提供完整数据或仅提供一个。
这是我给出的代码:
const search = req.query.search || "";
const Rest = await Restaurant.find(
{name:{$regex:search,$options:"i"}},
{locality:{$regex:search,$options:'i'}},
{"cuisine.name":{$regex:search,$options:'i'})
正如我在 .find() 中提到的多个字段一样,我得到一个空数组作为输出。
如果我使用下面的代码(即)只找到一个字段,我会得到输出。
const Rest = await Restaurant.find({name:{$regex:search,$options:"i"}})
如果我搜索 3 个字段 name/locality/cuisine.name 中的任何一个,我应该得到适当的输出。
【问题讨论】: