2014-11-05 50 views
3

我想將「db.users.find()」這樣的字符串傳遞給節點服務器並讓它執行命令。這個問題:How to execute a MongoDB query in the native node-mongo-native driver?有一個C-驅動程序的答案。如何使用本地節點驅動程序在節點服務器上執行mongo查詢字符串?

有沒有辦法直接使用本地節點驅動程序? 我試過做

db.eval('function(){'+query+'}', function(err, result){ 
    console.log("the result is", result 
}); 

它不起作用。感謝幫助。

回答

4

你很近,但是你創建的函數需要返回一些可用的回調函數。例如:

var query = 'db.users.find()'; 
db.eval('function(){ return ' + query + '.toArray(); }', function(err, result){ 
    console.log("the result is", result); 
}); 
+0

謝謝!它也看起來像我需要一個角色,允許anyResource上的AnyAction能夠運行此。爲此奮鬥。你知道怎麼做嗎?找不到一個很好的例子:( – wemadeit 2014-11-05 16:49:41

+0

對不起,從未考慮過這個問題;如果你被卡住了,可能最好把它作爲一個單獨的問題發佈) – JohnnyHK 2014-11-05 16:52:32

+0

有道理會接受這個謝謝! – wemadeit 2014-11-05 16:59:20

相關問題