【问题标题】:mongodb findOne does not return what I expectmongodb findOne 没有返回我所期望的
【发布时间】:2016-01-06 20:07:14
【问题描述】:

当我在 Google Chrome 控制台中使用 MachineReady.findOne({_id:"BYNbKqncKHmgfFK2q"}, {machineId:1, _id:0}); 检查我的数据库时 它返回整个文档,而不仅仅是 machineId。 当我在 mongo shell 中运行相同的命令时,效果很好。

我错过了什么?这是因为我在客户端运行它(所有文档都已加载)?

【问题讨论】:

    标签: mongodb meteor mongodb-query


    【解决方案1】:

    一个。应该是MachineReady.findOne({_id:"BYNbKqncKHmgfFK2q"}, {fields:{_id:1}})

    b.目前您无法在同一查询中排除和包含字段,因此 {machineId:1, _id:0} 将不起作用。

    【讨论】:

    • 还要注意,除了请求的任何其他字段之外,始终包含_id 字段。我还没有尝试排除 _id 字段。
    • 谢谢,我的印象是 mongo doc 中的所有功能都在运行,如 java 脚本文件中所示。
    【解决方案2】:

    谷歌浏览器控制台你必须在最后包含.fetch()

    MachineReady.findOne({_id:"BYNbKqncKHmgfFK2q"}, {machineId:1, _id:0}).fetch();
    

    【讨论】:

      猜你喜欢
      • 2021-05-30
      • 1970-01-01
      • 2021-12-11
      • 2018-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-24
      相关资源
      最近更新 更多