javascript - Meteor Mongo 无法工作,但独立的 MongoDB 可以工作

标签 javascript node.js mongodb meteor mongodb-query

我有以下文件

{
    "_id" : ObjectId("5464e68481f8252e74f6e0ef"),
    "message" : "Hello World!",
    "timestamp" : ISODate("2014-11-13T17:12:36.547Z"),
    "sender" : "D3EkLv8vatX3xfCGE",
    "receiver" : [
        {
            "id" : "YzhZchz4AwCAd3q2R",
            "seen" : false
        },
        {
            "id" : "sm2W28EKYmHz29Aoj",
            "seen" : false
        }
    ],
    "saved" : false
}

这就是基本结构。现在我想获取所有具有当前用户 ID 的文档。 id 可以位于发送者字段中,也可以位于接收者数组中的对象之一。这工作正常:

db.messages.find({ 发件人: "D3EkLv8vatX3xfCGE"})

但是以下查询在 Meteor Mongo 实例上不起作用,但在 Mongo 2.6 中却可以:

db.messages.find({ 接收者: {id: "YzhZchz4AwCAd3q2R"} })

有什么办法可以让它发挥作用吗?此外,上述查询适用于 Minimongo,但不适用于 Meteor 捆绑的 mongo(meteor mongo),目前版本为 v2.4.9。

最佳答案

在 mongo shell 上,此查询似乎有效:

db.messages.find({ "receiver.id": "YzhZchz4AwCAd3q2R"} )

关于javascript - Meteor Mongo 无法工作,但独立的 MongoDB 可以工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26914766/

相关文章:

javascript - gsap tweenlite/tweenmax 垃圾收集、引用和性能

javascript - 本地文件路径的查询字符串和 outlook 电子邮件

node.js - Node.js 服务的打包 - 类似 .war

java - (架构)为 angular2 应用程序抓取数据。直接检查MongoDB还是我的Java REST?

mongodb - 通过 shell 脚本执行 mongo 命令

javascript - jQuery 获取调用脚本标签的引用

javascript - 意外的标识符修复

javascript - 生成带有 promise 的数据集

node.js - Ghost 博客的 Bash 脚本在服务器重启时不启动

javascript - MongoDB 和 Meteor - 插入嵌套数组的查询不起作用,没有抛出错误