访问为mongo运行JavaScript文件的字段值的正确语法是什么

时间:2015-12-29 05:27:12

标签: javascript mongodb syntax field environment

我在终端中运行此命令
    $mongo <database> -u user -p pw update.js

update.js包含此代码

var cursor = db.resources.find({
    user: "dummy0"
});
print('cursor:', cursor);
var oldMatter = cursor.values.green;

我的终端输出和我得到的错误如下 cursor: DBQuery: scrounge.resources -> { "user" : "dummy0" } E QUERY TypeError: Cannot read property 'green' of undefined

我使用的环境/ API /驱动程序是什么?
访问该值的正确语法是什么?

1 个答案:

答案 0 :(得分:1)

您是否尝试过分析返回的光标? db.resources.find将返回一个包含在可迭代游标/数组中的对象,因此您无法在cursor变量上访问对象的属性 - cursor.values.green将无效。

尝试使用findOne代替:

var obj = db.resources.findOne({
    user: "dummy0"
});

这会返回一个未包装为可迭代游标/数组的对象,因此假设它找到了一个对象,那么你应该能够做到

obj.values.green;