遵循mongodb的文档here ,我正在尝试使用 mongoose 搜索某些内容,同时使用 Express 的搜索查询,我的代码是这样的
collection_name.find{$text: { $search: req.query.search} }
但这会从数据库返回错误的数据集(因为它没有将查询视为短语)
我正在尝试接受这个
db.articles.find( { $text: { $search: "\"coffee shop\"" } } )
(这是文档中的示例,它给出了我想要的结果)
进入此:
collection_name.find( { $text: { $search: "\"req.query.search\"" } } )
但将 req.query.search 作为变量而不是字符串。
最佳答案
我认为您需要使用反引号字符来构建这样的搜索词:
db.articles.find( { $text: { $search: `"${req.query.search}"` } } )
关于node.js - 使用 mongoose,express 搜索短语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59397729/