2012-07-16 102 views
0

我有我的JS文件。
我在堪称顶级声明的变量:如何在同一个Mongodb脚本JS文件中使用全局变量

var aCollection = db.myCollection; 

我使用这个变量来引用集合。这很容易,因为我可以更改集合的名称来处理另一个集合。

现在我想在函数中使用,就像这样:

fn1 = function(_id) { 

    // use _id and aCollection 

    // i get an error if I use "aCollection" 
} 

我这样调用上面的函数:

db.eval(fn1, "245"); 

回答

0

db.eval在单独的情况下在服务器上执行fn1所以它无法访问其包含脚本的全局上下文。您必须更改fn1才能接受aCollection作为参数,然后将该参数传递给您的db.eval调用。

+0

这涉及到我的第二个问题。 我无法发送第二个参数,即集合名称。 http://stackoverflow.com/questions/11515580/mongodb-how-do-i-pass-a-collection-parameter-to-use – user1455545 2012-07-17 03:22:39