1
我的目標是使用來自Node的MongoDB(2.4.4)文本命令。它從命令行工作正常。根據以前的SO問題:Equivalent to mongo shell db.collection.runCommand() in Node.js,我嘗試使用MongoJS(0.7.17),但無法實現。以下是代碼:MongoDB和MongoJS - 無法獲取runCommand以用於文本查詢
mongojs = require('mongojs');
var products = mongojs('localhost:27017/mydb').collection('products');
products.runCommand('text', {search: 'a'}, function (err, docs) {
...
});
docs返回undefined,err爲null。我可以執行一個普通的函數,例如products.find()很好...我可以在MongoDB命令行上執行搜索。任何人都知道如何做到這一點?
BTW,這裏是文檔包含在回調:
{
"queryDebugString": "||||||",
"language": "english",
"results": [],
"stats": {
"nscanned": 0,
"nscannedObjects": 0,
"n": 0,
"nfound": 0,
"timeMicros": 55
},
"ok": 1
}
順便說一句,如果有另一種方法,使這項工作只用正常的本地驅動程序,我很好這一點。
是的,雖然mongojs文檔說應該工作。我剛剛結束了你提出的一個變種......從數據庫中取而代之。謝謝。它看起來像: db.command({text:'products',搜索:'mysearchterm'},function(e,o){}); – michael
有人可以解釋使用查找和使用db.command之間的區別嗎?爲什麼我不能在find中使用文本索引。這會不會符合這個習慣? – light24bulbs