我只想問一下,我怎樣才能將變量傳遞給貓鼬查詢?我已經試過這個,但總是得到一個空的結果。如何在mongoose object.find上傳遞變量值?
exports.persontSearch = function (req, res, search) {
PersonInfo.find({$or: [
// {'name.first': /.*search.*/},
// {'name.last': /.*search.*/}
// {'name.first': {$regex: /.* + search + .*/}},
// {'name.last': /.*search.*/}
{'name.first': new RegExp('/.*' + search + '/.*')},
{'name.last': /.*search.*/}
]}, function (err, person) {
if (err) {
winston.error(err);
res.json(err);
}
res.json({
result: person
});
});
};
但是,如果我將search
變量更改爲實際值,則會返回預期結果。
請幫助。
順便說一句,有沒有辦法避免new RegExp
?
試試'{$ regex:search}'。 – JohnnyHK
噢謝謝,明白了。 – zer09
@JohnnyHK你對我看到這之前,我評論,也沒有關閉的問題,所以我評論 – Vignesh