我正在尝试使用文本作为参数搜索对象。
我的mongodb中有以下数据:
[
{
"_id": "59d518859eacefa4555d6edb",
"id": "A07",
"nome": "Outras doenças intestinais por protozoários"
},
{
"_id": "59d518859eacefa4555d6edc",
"id": "A08",
"nome": "Infecções intestinais virais, outras e as não especificadas"
}
]
我的模特:
var cid = new Schema({
id: String,
nome: String
}, {collection: 'cid'});
cid.index({'id': 'text', 'nome': 'text'});
搜索方法:
var cid = require('./cid.model');
cid.find({$text: {$search: 'A07'}})
.exec(function(err, result) {
if (err) {
console.log(err);
} else {
res.json(result)
}
})
当我使用'A07'作为参数时。
但是当我使用'Outrasdoençasintusinaisporprotozoários'作为参数或某些词语时,例如:'doenças','outras'不会返回任何内容。
我放手了什么?
答案 0 :(得分:0)
我会这样做:
cid.find({
$or: [
{name: new RegExp(your_variable, "i")},
{id: new RegExp(your_variable, "i")}
]
});