ユーザーが検索したものからクエリを作成しようとしています。mongoDB セレクターで送信したい文字列の配列があります。問題は /text/ 構文にあり、次のように mongoDB コンソールから完全に機能します。
Items.find({ $or: [{name: /doc/}, {tags: /doc/}, {name: /test/}, {tags: /test/}] });
しかし、私はjavascriptで同じ構文を書くことができず、いくつかのバージョンを試しました。
var mongoDbArr = [];
searchArray.forEach(function(text) {
mongoDbArr.push({name: /text/});
mongoDbArr.push({tags: /text/});
});
return Items.find({ $or: mongoDbArr});
ただし、変数の内容ではなく、「テキスト」のみを検索します。そして、このように:
var mongoDbArr = [];
searchArray.forEach(function(text) {
mongoDbArr.push({name: "/" + text + "/"});
mongoDbArr.push({tags: "/" + text + "/"});
});
return Items.find({ $or: mongoDbArr});
しかし、それは私に結果を返してくれません。私は何が欠けていますか?